digitalmars.D.learn - Which GDC to download?
- NX (19/19) Oct 01 2015 Windows X86 64bit (x86_64-w64-mingw32)
- Adam D. Ruppe (15/24) Oct 01 2015 Yes, that's a cross compiler. You run it on Windows to produce
- Johannes Pfau (15/43) Oct 01 2015 Linking only works for libraries which are included with the cross
- NX (5/7) Oct 01 2015 Well... To me it's surprising GDC is not usable on windows but I
Windows X86 64bit (x86_64-w64-mingw32) Standard builds Target DMDFE Runtime GCC GDC revision Build Date arm-linux-gnueabi 2.066.1 yes 5.2.0 dadb5a3784 2015-08-30 arm-linux-gnueabihf 2.066.1 yes 5.2.0 dadb5a3784 2015-08-30 x86_64-w64-mingw32 2.066.1 yes 5.2.0 dadb5a3784 2015-08-30 I'm totally confused about what does these mean: 1) Why there is a download targeting arm-linux-gnueabi(hf) and what exactly it means? Is this a cross-compiler which will produce obj files containing ARM instructions or what? If so, will linking just work? and how? 2) Is what I understand from "cross-compiler" correct? (a compiler that can target different architectures than the host architecture it's compiled for) 3) Which one to choose if I just want to write & compile windows programs? 4) x86_64-w64-mingw32 is commented as "Unsupported alpha build. SEH"? is that means windows-targeting version of the compiler is highly unstable/not ready yet? What's "SEH"?
Oct 01 2015
On Thursday, 1 October 2015 at 12:04:40 UTC, NX wrote:1) Why there is a download targeting arm-linux-gnueabi(hf) and what exactly it means? Is this a cross-compiler which will produce obj files containing ARM instructions or what? If so, will linking just work? and how?Yes, that's a cross compiler. You run it on Windows to produce programs for an ARM device running Linux (for example, you do your development on Windows but want the program to run on a Raspberry Pi)3) Which one to choose if I just want to write & compile windows programs?The x86_64-w64-mingw32 one. That means Intel processor, Windows 64 bit. mingw32 is the library used by gcc to make Windows programs. You could also use the 32 bit one below, i686-w64-mingw32, both should work on Windows.4) x86_64-w64-mingw32 is commented as "Unsupported alpha build. SEH"? is that means windows-targeting version of the compiler is highly unstable/not ready yet? What's "SEH"?SEH is Windows' "Structured Exception Handling". The open source compilers (not just D, basically all of them) historically haven't done a great job implementing that but have recently been fixing their problems. You'll probably be fine using it though.
Oct 01 2015
Am Thu, 01 Oct 2015 12:04:38 +0000 schrieb NX <nightmarex1337 hotmail.com>:Windows X86 64bit (x86_64-w64-mingw32) Standard builds Target DMDFE Runtime GCC GDC revision Build Date arm-linux-gnueabi 2.066.1 yes 5.2.0 dadb5a3784 2015-08-30 arm-linux-gnueabihf 2.066.1 yes 5.2.0 dadb5a3784 2015-08-30 x86_64-w64-mingw32 2.066.1 yes 5.2.0 dadb5a3784 2015-08-30 I'm totally confused about what does these mean: 1) Why there is a download targeting arm-linux-gnueabi(hf) and what exactly it means? Is this a cross-compiler which will produce obj files containing ARM instructions or what? If so, will linking just work? and how?Linking only works for libraries which are included with the cross compiler. That usually means only the C/C++/D standard libraries will be available. You can link to other libraries with a cross-compiler, but you need to provides these libraries in some way: http://wiki.dlang.org/GDC/Cross_Compiler http://wiki.dlang.org/GDC/Cross_Compiler/Existing_Sysroot http://wiki.dlang.org/GDC/Cross_Compiler/Existing_Sysroot#Using_a_compiler_from_gdcproject.org.2Fdownloads For more information: http://build-gdc.readthedocs.org/en/latest/Cross-Compiler%20Basics/2) Is what I understand from "cross-compiler" correct? (a compiler that can target different architectures than the host architecture it's compiled for) 3) Which one to choose if I just want to write & compile windows programs?Adding to Adams answer I guess we (the GDC team) have to somehow present 'native compilers' more prominently.4) x86_64-w64-mingw32 is commented as "Unsupported alpha build. SEH"? is that means windows-targeting version of the compiler is highly unstable/not ready yet? What's "SEH"?Unfortunately Windows GDC builds are very unstable right now. I'd recommend using DMD or LDC for Windows.
Oct 01 2015
Thanks both to you for answers... On Thursday, 1 October 2015 at 14:07:02 UTC, Johannes Pfau wrote:Unfortunately Windows GDC builds are very unstable right now. I'd recommend using DMD or LDC for Windows.Well... To me it's surprising GDC is not usable on windows but I doubt LDC is more stable. Sad... *Cries in Turkish*
Oct 01 2015