Thread overview
Which GDC to download?
Oct 01, 2015
NX
Oct 01, 2015
Adam D. Ruppe
Oct 01, 2015
Johannes Pfau
Oct 01, 2015
NX
October 01, 2015
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"?
October 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.
October 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.
October 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*