www.digitalmars.com         C & C++   DMDScript  

D.gnu - Build gdc on Windows

reply Carl Sturtivant <sturtivant gmail.com> writes:
I'd like to build gdc to be compatible with the Mingw-w64 64-bit 
gcc on Windows. (Building gdc to be compatible with the Mingw-w64 
32-bit gcc on Windows also interests me.)

Is this feasible right now, and if so, how should I proceed?
Feb 02 2016
next sibling parent "Sebastien Alaiwan via D.gnu" <d.gnu puremagic.com> writes:
On 2016-02-03 03:06, Carl Sturtivant via D.gnu wrote:
 I'd like to build gdc to be compatible with the Mingw-w64 64-bit gcc on=
Windows. (Building gdc to be compatible with the Mingw-w64 32-bit gcc on= Windows also interests me.)
 Is this feasible right now, and if so, how should I proceed?
Hi Carl, You should look at this repo: https://github.com/venix1/MinGW-GDC It contains a script to do exactly that: building GDC for windows (it inc= ludes dependency downloading, etc.) If you want to build a cross compiler (running under GNU/Linux, but targe= tting mingw/Windows) you can look at this script (disclaimer: this is min= e): https://github.com/Ace17/MinGW-GDC/blob/master/build_gnu
Feb 02 2016
prev sibling next sibling parent reply "Iain Buclaw via D.gnu" <d.gnu puremagic.com> writes:
On 3 Feb 2016 3:10 am, "Carl Sturtivant via D.gnu" <d.gnu puremagic.com>
wrote:
 I'd like to build gdc to be compatible with the Mingw-w64 64-bit gcc on
Windows. (Building gdc to be compatible with the Mingw-w64 32-bit gcc on Windows also interests me.)
 Is this feasible right now, and if so, how should I proceed?
There is: http://gdcproject.org/downloads I'll have to dig out what scripts were used to build them (I didn't write them).
Feb 02 2016
parent reply Vadim Lopatin <coolreader.org gmail.com> writes:
On Wednesday, 3 February 2016 at 07:54:07 UTC, Iain Buclaw wrote:
 On 3 Feb 2016 3:10 am, "Carl Sturtivant via D.gnu" 
 <d.gnu puremagic.com> wrote:
 I'd like to build gdc to be compatible with the Mingw-w64 
 64-bit gcc on
Windows. (Building gdc to be compatible with the Mingw-w64 32-bit gcc on Windows also interests me.)
 Is this feasible right now, and if so, how should I proceed?
There is: http://gdcproject.org/downloads I'll have to dig out what scripts were used to build them (I didn't write them).
Is there any reason why there are no Windows/mingw builds targeted for mingw in http://gdcproject.org/downloads? I see only arm cross-compilers. Is it possible to add native mingw 32/64 binaries?
Feb 03 2016
parent reply Johannes Pfau <nospam example.com> writes:
Am Wed, 03 Feb 2016 10:51:11 +0000
schrieb Vadim Lopatin <coolreader.org gmail.com>:

 On Wednesday, 3 February 2016 at 07:54:07 UTC, Iain Buclaw wrote:
 On 3 Feb 2016 3:10 am, "Carl Sturtivant via D.gnu" 
 <d.gnu puremagic.com> wrote:  
 I'd like to build gdc to be compatible with the Mingw-w64 
 64-bit gcc on  
Windows. (Building gdc to be compatible with the Mingw-w64 32-bit gcc on Windows also interests me.)
 Is this feasible right now, and if so, how should I proceed?
  
There is: http://gdcproject.org/downloads I'll have to dig out what scripts were used to build them (I didn't write them).
Is there any reason why there are no Windows/mingw builds targeted for mingw in http://gdcproject.org/downloads?
Windows/MinGW targets are not supported by GDC right now.
 I see only arm cross-compilers.
 
 Is it possible to add native mingw 32/64 binaries?
 
(Pre-)Alpha quality binaries are available, but we don't want to advertise these on the homepage: ftp://ftp.gdcproject.org/binaries/5.2.0/x86_64-w64-mingw32/gdc-5.2.0+2.066.1.7z ftp://ftp.gdcproject.org/binaries/5.2.0/i686-w64-mingw32/gdc-5.2.0+2.066.1.7z
Feb 03 2016
next sibling parent Vadim Lopatin <coolreader.org gmail.com> writes:
On Wednesday, 3 February 2016 at 13:50:56 UTC, Johannes Pfau 
wrote:
 Is it possible to add native mingw 32/64 binaries?
 
(Pre-)Alpha quality binaries are available, but we don't want to advertise these on the homepage: ftp://ftp.gdcproject.org/binaries/5.2.0/x86_64-w64-mingw32/gdc-5.2.0+2.066.1.7z ftp://ftp.gdcproject.org/binaries/5.2.0/i686-w64-mingw32/gdc-5.2.0+2.066.1.7z
Thank you! I'll try these binaries tomorrow.
Feb 03 2016
prev sibling parent reply Vadim Lopatin <coolreader.org gmail.com> writes:
On Wednesday, 3 February 2016 at 13:50:56 UTC, Johannes Pfau 
wrote:
 (Pre-)Alpha quality binaries are available, but we don't want to
 advertise these on the homepage:
 ftp://ftp.gdcproject.org/binaries/5.2.0/x86_64-w64-mingw32/gdc-5.2.0+2.066.1.7z
 ftp://ftp.gdcproject.org/binaries/5.2.0/i686-w64-mingw32/gdc-5.2.0+2.066.1.7z
Binaries generated by GDC/mingw have a problem with debugging using GDB. Setting of breakpoints, stepping by lines work ok. Showing of local variables for frame works strange -stack-list-variables --thread 1 --frame 0 --simple-values Instead of locals, I see a list of some global static variables, like typeinfo and init values, e.g.: variables = [ { name = "5TypeInfo_S4core8demangle16__T6mangleTFZPvZ6mangleFNaNbNfAxaAaZ11DotSplitte()", type = "TypeInfo_Struct" }, { name = "std.uni.SliceOverIndexed!(int[]).SliceOverIndexed.__init", type = "const struct SliceOverIndexed" }, No local variables are shown. Is it GDC or GDB issue?
Feb 05 2016
parent Johannes Pfau <nospam example.com> writes:
Am Fri, 05 Feb 2016 11:06:16 +0000
schrieb Vadim Lopatin <coolreader.org gmail.com>:

 On Wednesday, 3 February 2016 at 13:50:56 UTC, Johannes Pfau 
 wrote:
 (Pre-)Alpha quality binaries are available, but we don't want to
 advertise these on the homepage:
 ftp://ftp.gdcproject.org/binaries/5.2.0/x86_64-w64-mingw32/gdc-5.2.0+2.066.1.7z
 ftp://ftp.gdcproject.org/binaries/5.2.0/i686-w64-mingw32/gdc-5.2.0+2.066.1.7z  
Binaries generated by GDC/mingw have a problem with debugging using GDB. Setting of breakpoints, stepping by lines work ok. Showing of local variables for frame works strange -stack-list-variables --thread 1 --frame 0 --simple-values Instead of locals, I see a list of some global static variables, like typeinfo and init values, e.g.: variables = [ { name = "5TypeInfo_S4core8demangle16__T6mangleTFZPvZ6mangleFNaNbNfAxaAaZ11DotSplitte()", type = "TypeInfo_Struct" }, { name = "std.uni.SliceOverIndexed!(int[]).SliceOverIndexed.__init", type = "const struct SliceOverIndexed" }, No local variables are shown. Is it GDC or GDB issue?
Could be both. I don't think the GDB/GDC combination has been tested on windows. You should use a very recent GDB version for the GCC5 builds though. http://msys2.github.io/ provides a mingw-w64-gdb 7.10.1 package.
Feb 06 2016
prev sibling parent reply "Iain Buclaw via D.gnu" <d.gnu puremagic.com> writes:
On 3 Feb 2016 8:54 am, "Iain Buclaw" <ibuclaw gdcproject.org> wrote:
 On 3 Feb 2016 3:10 am, "Carl Sturtivant via D.gnu" <d.gnu puremagic.com>
wrote:
 I'd like to build gdc to be compatible with the Mingw-w64 64-bit gcc on
Windows. (Building gdc to be compatible with the Mingw-w64 32-bit gcc on Windows also interests me.)
 Is this feasible right now, and if so, how should I proceed?
There is: http://gdcproject.org/downloads I'll have to dig out what scripts were used to build them (I didn't write
them). Ah, cleverly hidden in my own organisation repo! https://github.com/D-Programming-GDC/build-gdc
Feb 03 2016
next sibling parent reply Johannes Pfau <nospam example.com> writes:
Am Wed, 3 Feb 2016 09:00:37 +0100
schrieb "Iain Buclaw via D.gnu" <d.gnu puremagic.com>:

 On 3 Feb 2016 8:54 am, "Iain Buclaw" <ibuclaw gdcproject.org> wrote:
 On 3 Feb 2016 3:10 am, "Carl Sturtivant via D.gnu"
 <d.gnu puremagic.com>  
wrote:
 I'd like to build gdc to be compatible with the Mingw-w64 64-bit
 gcc on  
Windows. (Building gdc to be compatible with the Mingw-w64 32-bit gcc on Windows also interests me.)
 Is this feasible right now, and if so, how should I proceed?
  
There is: http://gdcproject.org/downloads I'll have to dig out what scripts were used to build them (I didn't write
them). Ah, cleverly hidden in my own organisation repo! https://github.com/D-Programming-GDC/build-gdc
See also: https://github.com/D-Programming-GDC/build-gdc-docker http://build-gdc.readthedocs.org/en/latest/ But the binaries are probably not compatible with some other Mingw-w64 compilers. Some builds use static libgccs, some builds use special patches, ... Another simple way to build GDC on windows is using MSYS2: http://msys2.github.io/ Simply modify/adapt the PKGBUILD: https://github.com/Alexpux/MINGW-packages/tree/master/mingw-w64-gcc
Feb 03 2016
parent Carl Sturtivant <sturtivant gmail.com> writes:
On Wednesday, 3 February 2016 at 08:58:56 UTC, Johannes Pfau 
wrote:
 See also: https://github.com/D-Programming-GDC/build-gdc-docker 
 http://build-gdc.readthedocs.org/en/latest/

 But the binaries are probably not compatible with some other 
 Mingw-w64 compilers. Some builds use static libgccs, some 
 builds use special patches, ...

 Another simple way to build GDC on windows is using MSYS2: 
 http://msys2.github.io/

 Simply modify/adapt the PKGBUILD: 
 https://github.com/Alexpux/MINGW-packages/tree/master/mingw-w64-gcc
Thanks for the warning. I'll look at all this stuff.
Feb 04 2016
prev sibling parent Carl Sturtivant <sturtivant gmail.com> writes:
On Wednesday, 3 February 2016 at 08:00:37 UTC, Iain Buclaw wrote:
 On 3 Feb 2016 8:54 am, "Iain Buclaw" <ibuclaw gdcproject.org> 
 wrote:
 There is: http://gdcproject.org/downloads

 I'll have to dig out what scripts were used to build them (I 
 didn't write
them). Ah, cleverly hidden in my own organisation repo! https://github.com/D-Programming-GDC/build-gdc
Thanks, I'll investigate.
Feb 04 2016