On 03/09/2018 03:54 PM, enh wrote: > well, that took a lot longer than expected... but r17beta1 is out now > with an up-to-date libc.a. > > download: https://github.com/android-ndk/ndk/wiki#current-beta-release > release notes: https://github.com/android-ndk/ndk/wiki/Changelog-r17-beta1 > > standalone toolchain example: > https://developer.android.com/ndk/guides/standalone_toolchain.html#building_open_source_projects_using_standalone_toolchains > > (https://developer.android.com/ndk/downloads/index.html should update > later this afternoon.)
Let's see... $ sudo build/tools/make_standalone_toolchain.py --arch x86_64 --api 26 \ --stl=libc++ --install-dir=/opt/android/x86-64 $ CROSS_COMPILE=/opt/android/x86-64/bin/llvm- CFLAGS=--static make defconfig It has no llvm-cc... ok then: $ sudo ln -s clang /opt/android/x86-64/bin/llvm-cc $ CROSS_COMPILE=/opt/android/x86-64/bin/llvm- CFLAGS=--static make defconfig $ CROSS_COMPILE=/opt/android/x86-64/bin/llvm- CFLAGS=--static make many warnings ignored... generated/obj/log.o:log.c:function log_main: error: undefined reference to '__android_log_write' $ CROSS_COMPILE=... make menuconfig # switch off log in android menu. $ CROSS_COMPILE=... make more warnings, more warnings... scripts/make.sh: line 28: /opt/android/x86-64/bin/llvm-strip: No such file or directory strip failed, using unstripped $ ./toybox Illegal instruction (core dumped) landley@driftwood:~/toybox/clean$ file toybox toybox: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, not stripped Well... it's certainly progress. :) I'll see if I can work out why it doesn't run... $ /opt/android/x86-64/bin/llvm-cc --static hello.c $ ./a.out Illegal instruction (core dumped) Because a statically linked hello world segfaults on ubuntu 14.04, would be why. The warnings, by the way, are primarily: toys/posix/iconv.c:53:5: warning: implicit declaration of function 'iconv' is invalid in C99 [-Wimplicit-function-declaration] iconv(TT.ic, &in, &inlen, &out, &outlen); ^ toys/posix/iconv.c:70:31: warning: implicit declaration of function 'iconv_open' is invalid in C99 [-Wimplicit-function-declaration] if ((iconv_t)-1 == (TT.ic = iconv_open(TT.to, TT.from))) ^ toys/posix/iconv.c:73:24: warning: implicit declaration of function 'iconv_close' is invalid in C99 [-Wimplicit-function-declaration] if (CFG_TOYBOX_FREE) iconv_close(TT.ic); And that file is doing #include <iconv.h> so I don't see _why_ it's not getting them? Rob _______________________________________________ Toybox mailing list Toybox@lists.landley.net http://lists.landley.net/listinfo.cgi/toybox-landley.net