On 27 August 2018 at 19:23, Arun Chandrasekaran via Digitalmars-d-announce <[email protected]> wrote: > On Friday, 24 August 2018 at 05:35:13 UTC, Eugene Wissner wrote: >> >> As some of you may know D frontend was merged into GDC some time ago and >> is up to date. D version currently supported by GDC is 2.081.2 and it can be >> found in "gdc-7" and "gdc-8" branches. I will say a bit more about GDC >> development and development plans later. >> >> I prepared GDC/GCC 7.3.0 binaries for x86-64 Linux built on Ubuntu 18.04: >> >> https://download.dlackware.com/gdc/gdc-7.3.0_2.081.2-linux-x86_64.tar.xz >> >> I’m not a regular Ubuntu user, and built GDC in a VM, so don't blame me >> (too much) if something doesn’t work, but let me know anyway. For testing >> I've used a minimal Ubuntu installation and had to install only "libc-dev" >> package. The package includes gcc, g++, gdc and standard GNU tools, but no D >> tools like dub. I still need some time to automate the building, then I can >> build for more platforms and provide some core tools. >> >> We support several GCC versions and we still support C++-frontend (D >> version: 2.076). The reason for this is that C++-frontend should be merged >> into the next GCC version (GCC 9), then it can be built without another D >> compiler. D frontend goes into GCC 10 and can be built with GCC 9, so GCC >> can be bootstrapped without external compilers and can be used to bootstrap >> other D compilers. >> >> Current branch model. There are 2 "master" branches: master and stable. >> master contains D frontend and follows DMD master (we'll see if we can >> update every week or every two weeks). stable contains C++ frontend which >> doesn't get new D features anymore but of course we merge bug fixes from >> master. Both follow GCC master (master is updated weekly to GCC snapshots, >> stable from time to time). >> stable has 4 derivates: gdc-8-stable, gdc-7-stable, gdc-6-stable and >> gdc-5-stable. It seems to be a lot, but the last merge from stable was >> really trivial, so the most work is done on the master derivates: "gdc-8" >> and "gdc-7" branches. These two follow DMD stable and contain stable D >> releases. > > > 1. It would be good to print the DMD frontend version with `gdc --version`. > It is helpful in reporting bugs. LDC does this. > > ``` > $ ldc2 --version > LDC - the LLVM D compiler (1.9.0): > based on DMD v2.079.1 and LLVM 6.0.0 > built with LDC - the LLVM D compiler (1.9.0) > Default target: x86_64-unknown-linux-gnu > Host CPU: ivybridge > http://dlang.org - http://wiki.dlang.org/LDC > > Registered Targets: > aarch64 - AArch64 (little endian) > aarch64_be - AArch64 (big endian) > arm - ARM > arm64 - ARM64 (little endian) > armeb - ARM (big endian) > nvptx - NVIDIA PTX 32-bit > nvptx64 - NVIDIA PTX 64-bit > ppc32 - PowerPC 32 > ppc64 - PowerPC 64 > ppc64le - PowerPC 64 LE > thumb - Thumb > thumbeb - Thumb (big endian) > x86 - 32-bit X86: Pentium-Pro and above > x86-64 - 64-bit X86: EM64T and AMD64 > ``` >
Version print information is managed outside of gdc. You can get this from __VERSION__ or output of -v > 2. I see a file dub_platform_probe-UUID.s getting created in the root dir > when building with GDC and not with DMD/LDC. > Ask dub maintainers why. > 3. Multiple definition error. Logs: https://bpaste.net/show/7b12dfccceb1 > This doesn't seem to be a problem when building with DMD (v2.081.1) / LDC > (1.9.0) > > "dependencies" : { > "darg": "~>0.0.4", > "painlessjson": "~>1.3.5", > "requests": "~>0.8.3" > } > Raise a bug then? Iain.
