GDC ARM beta #1 (with binary releases!)

inout inout at gmail.com
Mon Mar 17 16:28:57 PDT 2014


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.gdcproject.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. ( http://wiki.dlang.org/GDC/Installation/Generic )
> * 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://gdcproject.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-gdcproject-linux-gnueabi[hf]-gdc
>
> Note: The toolchain directories are write protected. If you 
> want to
> change this, use chmod +w -R arm-gdcproject-linux-gnueabi[hf].
>
> For more information on how to use additional libraries with 
> the cross
> compilers, see
> http://crosstool-ng.org/hg/crosstool-ng/raw-file/e11a8a2e225d/docs/5%20-%20Using%20the%20toolchain.txt
>
> ==== Known issues ====
>
> Known ARM-specific issues
> * std.internal.math.gammafunction.d is not ported yet (Help 
> here is
>   very appreciated!)
> * Array ops are evaluated in reverse order (WIP, FE 2.065)
>   http://bugzilla.gdcproject.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.

Any love for us Mac users? I'd love to try it for Android/NDK
development.


More information about the Digitalmars-d-announce mailing list