CyberShadow / Digger

A tool to build D and bisect old D versions
Other
57 stars 9 forks source link

Can't build 64-bit version on Windows (DMD git 2.067 branch) #26

Closed MarisaLovesUsAll closed 7 years ago

MarisaLovesUsAll commented 9 years ago

Tried with web interface and from console (--model=64). Digger built me a x86 version instead of x64 both times. Digger version: e5616cab41eb29397d253be3dca17eaa998d3539 Jul 21, 2015 Specified DMD version: 2.067

CyberShadow commented 9 years ago

How did you verify the bitness?

CyberShadow commented 9 years ago

--model controls the model of Phobos/Druntime, not DMD. The bitness of DMD does not affect its code generation capabilities, 32-bit DMD can build 64-bit programs and vice versa.

CyberShadow commented 9 years ago

The DigitalMars C++ compiler, used for building DMD, only supports Win32. Digger supports using Visual Studio to build a 64-bit DMD, but this is not currently exposed to the build command.

MarisaLovesUsAll commented 9 years ago

Thanks for answers!

How did you verify the bitness?

1) DMD still crashes with «out of memory» when >4 Gb of memory is allocated (checked through Windows Task manager) 2) PE L in the beginning of dmd.exe (opened it in Sublime Text).

The bitness of DMD does not affect its code generation capabilities, 32-bit DMD can build 64-bit programs and vice versa.

I know, but 32-bit DMD isn't working with >4 Gb RAM allocated. I'm building dash engine, and it uses CTFE pretty heavily.

The DigitalMars C++ compiler, used for building DMD, only supports Win32. Digger supports using Visual Studio to build a 64-bit DMD, but this is not currently exposed to the build command.

So can I build DMD with Visual Studio then, and how to do this?

CyberShadow commented 9 years ago

By hand? Just use the Visual Studio solution file included with DMD's source code.

MarisaLovesUsAll commented 9 years ago

@CyberShadow Ok, thanks.

CyberShadow commented 8 years ago

https://github.com/dlang/dmd/pull/5694