Thread overview | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
December 25, 2016 New GDC binaries: 2.068.2, shared library support, multilib support & a new gdmd tool | ||||
---|---|---|---|---|
| ||||
Happy holidays everybody, I'm happy to finally announce the release of new GDC binaries at https://gdcproject.org/downloads . GDC is the GNU D Compiler, a D compiler using GCC as the compiler backend. This release was delayed by massive internal changes in GDC in preparation for the DDMD frontend and related regressions. We think GDC is now sufficiently stable for a new release though. New features since the last release include: * D frontend updated to 2.068.2, the last C++ frontend version. We additionally include some backported changes (e.g. loading libcurl dynamically). Although this is of course still kind of outdated it should be a useful improvement compared to the last release (2.066.1). * New GCC versions. The new binaries are based on these backend versions: 4.8.5, 4.9.4, 5.4.0, 6.3.0. We use new, customized build scripts for GCC to produce 40 different toolchains from 5 configuration files. * Multilib support: The new build scripts allow for building multilib compilers. This means there are now less compiler archives to choose from and one compiler can compile for different targets using -m flags. This includes the famous -m32/-m64 for x86 but we now also support -mfloat-abi=soft/softfp/hard for the ARM target. * Shared library support: We added support for shared libraries to GDC and all toolchain binaries ship with static and shared libraries installed. GDC still defaults to static libraries so pass the -shared-libphobos flag to use the shared library instead. * New mechanism to link system dependencies: All system libraries needed by phobos (-ldl, -lrt, -latomic) are detected in the phobos ./configure script. The required dependencies are added to a libgphobos.spec file and installed along with the libgphobos.so/.a libraries. GDC then reads this file to detect the required libraries, so the libraries are no longer hard coded in GDC. Note for distribution packagers: You must make sure to manually install this file if you do not use the standard make install command. * New GDMD tool: We now ship a new gdmd binary which replaces the old perl script. It's written in D and up-to-date with the DMD 2.068.2 interface. Compared to the old script gdmd now does not need any additional dependencies and supports more advanced DMD functions (e.g gdmd -main -run a.d --program-args). Travis-CI should pick up the new release from now on. Packagers can use the following git tags when creating packages: v2.068.2_gcc6 v2.068.2_gcc5 v2.068.2_gcc4.9 v2.068.2_gcc4.8 Regards, Johannes |
December 25, 2016 Re: New GDC binaries: 2.068.2, shared library support, multilib support & a new gdmd tool | ||||
---|---|---|---|---|
| ||||
Posted in reply to Johannes Pfau | On Sunday, 25 December 2016 at 19:41:38 UTC, Johannes Pfau wrote:
> Happy holidays everybody,
>
> I'm happy to finally announce the release of new GDC binaries at https://gdcproject.org/downloads .
Gratz!
Hope you can add it to d.godbolt.org soon. ;)
-Johan
|
December 25, 2016 Re: New GDC binaries: 2.068.2, shared library support, multilib support & a new gdmd tool | ||||
---|---|---|---|---|
| ||||
Posted in reply to Johannes Pfau | On 12/25/2016 02:41 PM, Johannes Pfau wrote:
> Happy holidays everybody,
>
> I'm happy to finally announce the release of new GDC binaries at
> https://gdcproject.org/downloads . GDC is the GNU D Compiler, a D
> compiler using GCC as the compiler backend.
Congratulations! We are very hopeful that all compiler will keep tightly together in 2017 and beyond, and it's clear you are taking good steps toward making that happen. -- Andrei
|
December 26, 2016 Re: New GDC binaries: 2.068.2, shared library support, multilib support & a new gdmd tool | ||||
---|---|---|---|---|
| ||||
Posted in reply to Johannes Pfau | On Sunday, 25 December 2016 at 19:41:38 UTC, Johannes Pfau wrote:
> Happy holidays everybody,
great work! long live gdc! ;-)
|
December 26, 2016 Re: New GDC binaries: 2.068.2, shared library support, multilib support & a new gdmd tool | ||||
---|---|---|---|---|
| ||||
Posted in reply to Johannes Pfau Attachments:
| Johannes Pfau via Digitalmars-d-announce <digitalmars-d-announce@puremagic.com> napsal Ne, pro 25, 2016 v 8∶41 : > Happy holidays everybody, > > I'm happy to finally announce the release of new GDC binaries at https://gdcproject.org/downloads . GDC is the GNU D Compiler, a D compiler using GCC as the compiler backend. > > ... Wow this is best xmas gift, thank you and all others who makes this possible |
December 26, 2016 Re: New GDC binaries: 2.068.2, shared library support, multilib support & a new gdmd tool | ||||
---|---|---|---|---|
| ||||
Attachments:
| Has the problem of the Debian Sid GDC packages and LDC packages having conflicting file installs been sorted so that it is possible to have both installed and usable at the same time? On Mon, 2016-12-26 at 10:51 +0100, Daniel Kozák via Digitalmars-d- announce wrote: > > Johannes Pfau via Digitalmars-d-announce > <digitalmars-d-announce@puremagic.com> napsal Ne, pro 25, 2016 v > 8∶41 > : > > Happy holidays everybody, > > > > I'm happy to finally announce the release of new GDC binaries at https://gdcproject.org/downloads . GDC is the GNU D Compiler, a D compiler using GCC as the compiler backend. > > > > ... > > Wow this is best xmas gift, thank you and all others who makes this possible -- Russel. ============================================================================= Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder@ekiga.net 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel@winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder |
December 26, 2016 Re: New GDC binaries: 2.068.2, shared library support, multilib support & a new gdmd tool | ||||
---|---|---|---|---|
| ||||
Posted in reply to Russel Winder | Am Mon, 26 Dec 2016 12:24:18 +0000 schrieb Russel Winder via Digitalmars-d-announce <digitalmars-d-announce@puremagic.com>: > Has the problem of the Debian Sid GDC packages and LDC packages having conflicting file installs been sorted so that it is possible to have both installed and usable at the same time? I think this has been fixed by the debian maintainers. -- Johannes |
December 26, 2016 Re: New GDC binaries: 2.068.2, shared library support, multilib support & a new gdmd tool | ||||
---|---|---|---|---|
| ||||
Posted in reply to Johannes Pfau Attachments:
| On 12/25/2016 09:41 PM, Johannes Pfau wrote: > Happy holidays everybody, > > I'm happy to finally announce the release of new GDC binaries at https://gdcproject.org/downloads . GDC is the GNU D Compiler, a D compiler using GCC as the compiler backend. A lot of great stuff! Got few questions when trying to update Arch Linux package though, could you please advice? 1) There is `gdc_include_dir` variable now, what is intended way to override it to custom path? `gcc/configure gdc_include_dir=/usr/include/dlang/gdc` doesn't seem to work 2) As far as I can see phobos is now built as shared library by default. What flags affect it? I'd like to build either static one, or both at the same time if possible. |
December 26, 2016 Re: New GDC binaries: 2.068.2, shared library support, multilib support & a new gdmd tool | ||||
---|---|---|---|---|
| ||||
Posted in reply to Dicebot | Am Mon, 26 Dec 2016 16:26:55 +0200 schrieb Dicebot <public@dicebot.lv>: > On 12/25/2016 09:41 PM, Johannes Pfau wrote: > > Happy holidays everybody, > > > > I'm happy to finally announce the release of new GDC binaries at https://gdcproject.org/downloads . GDC is the GNU D Compiler, a D compiler using GCC as the compiler backend. > > A lot of great stuff! Got few questions when trying to update Arch Linux package though, could you please advice? > > 1) There is `gdc_include_dir` variable now, what is intended way to override it to custom path? `gcc/configure gdc_include_dir=/usr/include/dlang/gdc` doesn't seem to work IIRC it's not really meant to be customizable. You'll have to edit libphobos/m4/druntime.m4. To regenerate the configure script you'll then have to call ./setup-gcc.sh first, cd into the gcc-x.y.z/libphobos directory and execute: export AUTOCONF=/opt/autoconf/2.64/bin/autoconf export ACLOCAL=/usr/bin/aclocal-1.11 export AUTOM4TE=/opt/autoconf/2.64/bin/autom4te export AUTOMAKE=/usr/bin/automake-1.11 /opt/autoconf/2.64/bin/autoreconf > > 2) As far as I can see phobos is now built as shared library by default. What flags affect it? I'd like to build either static one, or both at the same time if possible. > The default configuration should build static and shared libraries. The flags to enable/disable library types are [--enable|--disable]-[shared|static] -- Johannes |
December 26, 2016 Re: New GDC binaries: 2.068.2, shared library support, multilib support & a new gdmd tool | ||||
---|---|---|---|---|
| ||||
Posted in reply to Johannes Pfau Attachments:
| On Mon, 2016-12-26 at 14:42 +0100, Johannes Pfau via Digitalmars-d- announce wrote: > […] > > I think this has been fixed by the debian maintainers. > > -- Johannes Splendid. I must have missed the change happening. I can confirm it all does now work fine. Which is great. Is the DMD distribution the only source of rdmd, or is there a LDC or GDC version? -- Russel. ============================================================================= Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder@ekiga.net 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel@winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder |
Copyright © 1999-2021 by the D Language Foundation