Need help with setting up LDC to cross-compile to Android/ARM

H. S. Teoh hsteoh at quickfur.ath.cx
Mon Oct 22 05:27:41 UTC 2018


On Sat, Oct 20, 2018 at 09:51:28AM +0000, Joakim via Digitalmars-d wrote:
> On Friday, 19 October 2018 at 22:19:31 UTC, H. S. Teoh wrote:
[...]
> > Haha, I feel so silly now.  NDK r13b does not seem to have the
> > sysroot subdir required by the clang build command, that's why it
> > couldn't find the system headers.  So I ditched r13b and installed
> > r17b instead, and now I can build the runtime successfully!
> 
> Ah, that makes sense, that NDK is ancient, ;) it came out two years
> ago:
> 
> https://developer.android.com/ndk/downloads/revision_history

Well, it was what came with my distro, and I had just installed it
without much thought as to how recent it was or whether LDC would
support it.


> Official D support for Android was added to ldc 1.4 last September,
> which was after NDK r15c came out, when they switched to that sysroot
> directory with unified headers for all Android versions, so that's
> what ldc uses.  Before that, each Android version had its headers in a
> separate directory, which isn't supported by LDC.

Thanks for the info, updated the wiki page.


[...]
> > On a side note, the last section on that page mentions not knowing
> > how to create a keystore from scratch; actually, it's very simple
> > with the `keytool` utility that comes with the Oracle JRE.  I added
> > the steps on the talk page.  The only thing I'm unsure about is
> > whether keytool is available natively on Android.  If not, then
> > you'll have to generate the keystore on a PC and copy it over to
> > Android afterwards.
> 
> From scratch meaning without using keytool, ie OpenSSL or some other
> hashing/fingerprinting tool alone, because keytool isn't available in
> the Termux app. As mentioned at the end of the wiki page, I used to
> manually edit the apk hashed manifests using OpenSSL alone until that
> apksigner tool was added later.

I see.  Anyway, if openssl works then IMO it's so much the better than
the walled garden that is keytool / Java keystore.


T

-- 
Creativity is not an excuse for sloppiness.


More information about the Digitalmars-d mailing list