"Johannes Pfau" <nos...@example.com> wrote in message news:20120204203109.26c9a80b@jpf-laptop... > Hi, > I tried to rebuild the android ndk with gdc and documented the build > process at https://bitbucket.org/goshawk/gdc/wiki/GDC%20on%20Android > > The tutorial explains how to build a gdc cross compiler for android. It > uses GCC 4.6.2, a recent binutils snapshot and additionally provides a > recent gdb 7.4. > > 32bit linux binaries are also available here: > http://www.mediafire.com/?2cex2faqx327l > Download the android ndk r7 and extract the gdc 7z file in > android-ndk-r7/toolchains/ > > What's working: > I couldn't test the compiler yet and I hope someone else will provide > feedback, but the basic gdc compiler should work. druntime may or may > not work, but it's distributed so that can be tested. > Phobos is not being built yet. > > Known bugs/TODO: > > You need to build all D code with -fno-section-anchors, see > https://bitbucket.org/goshawk/gdc/issue/120/fsection-anchors-broken-on-arm > > build-druntime.patch needs to be integrated with gdc. See > https://gist.github.com/1739039 > There are basically 3 things this patch does: > * Currently gdc checks for __libc_stack_end as that's used by > druntime. This function is only available in glibc, but bionic > provides a similar function: __get_stack_base. The patch currently > simply replaces __libc_stack_end. We need some way to detect if we > build for bionic, so we can properly version this code. It should > also be tested to verify it is working correctly > * Building gcc/config/unix.d fails, so the patch simply skips that > file. This should be investigated further and fixed correctly. > * Disables phobos for now, although I think I just disabled building the > final library and the object files are still being built. > > gdbserver is not being built for some reason. Had no time to > investigate that yet.
Awesome! I look forward to giving it a try.