On Monday, 17 March 2014 at 14:07:13 UTC, Johannes Pfau wrote: > I'm happy to announce the first GDC ARM beta on behalf of the GDC > team :) > > ARM support is now at a point where the automated tests (test suite, > unit tests) pass and we're ready for feedback from real world usage. > All changes have been fully integrated into the standard GDC sources > which also means we're currently using the 2.064 frontend. ARM support > is currently limited to ARM/GNU Linux, i.e. GlibC. (This especially > means Android and bare metal programming are not officially supported). > > Please report all bugs to > http:// bugzilla. gdcproj ect.org/ > > If you're sure that the bug is a bug in phobos/druntime/DMD frontend > and not GDC specific please report it to > https://d.puremagic.com/issues > > ==== Getting the ARM beta ==== > > * All necessary code changes have been merged into Druntime, Phobos and > GDC and you can simply get the latest GDC sources and build them on > ARM. ( > * GDC is also part of the official Archlinux ARM repositories. To get > GDC for Archlinux ARM, simply use these commands: > pacman -S gdc libgphobos-devel > You can also get dub on Archlinux ARM by executing > pacman -S dub > Many thanks to Dicebot for maintaining the Archlinux packages. > * We provide binary cross compilers for windows X86 (32/64bit) and Linux > x86 (32/64bit). We also provide 'native' compilers which run directly > on ARM machines. > http:// gdcproj ect.org/ downloads/ > Note: Linux distribution packages or building from source should be > preferred. > > > ==== Precompiled GDC binaries ==== > > Precompiled toolchains are available for ARM hardfloat and ARM > softfloat systems. These toolchains target systems with relatively > recent glibc and linux kernel (GlibC >= 2.14, Linux >= 2.6.32). > > To check if you need the hard- or softfloat version run gcc -v where > gcc is a working gcc for your ARM target. Then look for --with-float= > in the output: --with-float=soft <==> softfloat > --with-float=hard <==> hardfloat > > --with-float=softfp: > We have no special binaries for these systems. Either compile GDC from > sources or use the softfloat binaries. The softfloat binaries should > work in 99% of all cases. The only known exception is using floating > point functions in fibers, a 'softfp' toolchain is required in this > case. > > > To compile for ARM simply use this gdc executable: > ./arm- gdcproject- linux- gnueabi[ hf]/bin/ arm-gdc project- linux- gnueabi[ hf]-gdc > > Note: The toolchain directories are write protected. If you want to > change this, use chmod +w -R arm-gdc project- linux- gnueabi[hf]. > > For more information on how to use additional libraries with the cross > compilers, see > http:// crosstool- ng.org/ hg/cros stool-ng/ raw-file/ e11a8a2e225d/ docs/ 5%20-%20Using% 20the% 20toolc hain.txt > > ==== Known issues ==== > > Known ARM-specific issues > * std.internal. math. gammafu nction.d is not ported yet (Help here is > very appreciated!) > * Array ops are evaluated in reverse order (WIP, FE 2.065) > http:// bugzilla. gdcproj ect.org/ show_bug. cgi?id=8 > > Known issues with the binary builds > * If you extract 7z files and are asked if you want to overwrite files, > answer yes (toolchains are built on case sensitive filesystems, > extracting on case insensitive filesystems will cause this warning) > * Use the arm-...-gdc.exe executables and not bin/arm.../gdc.exe. > * Unfortunately there's no multilib support for now. We use > crosstool-NG to build these toolchains and multilib support in > crosstool-NG is broken. However, this might change in the next few > months. I'm happy to announce the first GDC ARM beta on behalf of the GDCteam :)ARM support is now at a point where the automated tests (test suite,unit tests) pass and we're ready for feedback from real world usage.All changes have been fully integrated into the standard GDC sourceswhich also means we're currently using the 2.064 frontend. ARM supportis currently limited to ARM/GNU Linux, i.e. GlibC. (This especiallymeans Android and bare metal programming are not officially supported).Please report all bugs toIf you're sure that the bug is a bug in phobos/druntime/DMD frontendand not GDC specific please report it to==== Getting the ARM beta ====* All necessary code changes have been merged into Druntime, Phobos andGDC and you can simply get the latest GDC sources and build them onARM. ( http:// wiki.dl ang.org/ GDC/Inst allation/ Generic * GDC is also part of the official Archlinux ARM repositories. To getGDC for Archlinux ARM, simply use these commands:pacman -S gdc libgphobos-develYou can also get dub on Archlinux ARM by executingpacman -S dubMany thanks to Dicebot for maintaining the Archlinux packages.* We provide binary cross compilers for windows X86 (32/64bit) and Linuxx86 (32/64bit). We also provide 'native' compilers which run directlyon ARM machines.Note: Linux distribution packages or building from source should bepreferred.==== Precompiled GDC binaries ====Precompiled toolchains are available for ARM hardfloat and ARMsoftfloat systems. These toolchains target systems with relativelyrecent glibc and linux kernel (GlibC >= 2.14, Linux >= 2.6.32).To check if you need the hard- or softfloat version run gcc -v wheregcc is a working gcc for your ARM target. Then look for --with-float=in the output: --with-float=soft <==> softfloat--with-float=hard <==> hardfloat--with-float=softfp:We have no special binaries for these systems. Either compile GDC fromsources or use the softfloat binaries. The softfloat binaries shouldwork in 99% of all cases. The only known exception is using floatingpoint functions in fibers, a 'softfp' toolchain is required in thiscase.To compile for ARM simply use this gdc executable:Note: The toolchain directories are write protected. If you want tochange this, use chmod +w -RFor more information on how to use additional libraries with the crosscompilers, see==== Known issues ====Known ARM-specific issuesis not ported yet (Help here isvery appreciated!)* Array ops are evaluated in reverse order (WIP, FE 2.065)Known issues with the binary builds* If you extract 7z files and are asked if you want to overwrite files,answer yes (toolchains are built on case sensitive filesystems,extracting on case insensitive filesystems will cause this warning)* Use the arm-...-gdc.exe executables and not bin/arm.../gdc.exe.* Unfortunately there's no multilib support for now. We usecrosstool-NG to build these toolchains and multilib support incrosstool-NG is broken. However, this might change in the next fewmonths.