Thread overview
DMD 64 bit on Windows
Apr 14, 2015
Etienne
Apr 14, 2015
Dennis Ritchie
Apr 14, 2015
Dennis Ritchie
Apr 14, 2015
Etienne
Apr 14, 2015
Kagamin
Apr 14, 2015
wobbles
Apr 14, 2015
Etienne
Apr 14, 2015
Kai Nacke
Apr 14, 2015
Etienne
April 14, 2015
I'm currently experiencing Out Of Memory errors when compiling in DMD on Windows

Has anyone found a way to compile a DMD x86_64 compiler on Windows?
April 14, 2015
On Tuesday, 14 April 2015 at 01:31:27 UTC, Etienne wrote:
> I'm currently experiencing Out Of Memory errors when compiling in DMD on Windows
>
> Has anyone found a way to compile a DMD x86_64 compiler on Windows?

For example, here:
https://translate.google.ru/translate?hl=ru&sl=ru&tl=en&u=http%3A%2F%2Fblogsoftware.ru%2Fpost%2F116109292742%2F64-x-dmd
April 14, 2015
Main article here:
http://wiki.dlang.org/Installing_DMD_on_64-bit_Windows_7_%28COFF-compatible%29
April 14, 2015
On 4/13/2015 9:42 PM, Dennis Ritchie wrote:
> Main article here:
> http://wiki.dlang.org/Installing_DMD_on_64-bit_Windows_7_%28COFF-compatible%29
>

I think this might be about the -m64 option in the d compiler.

I'm actually having the Out Of Memory error with the -m64 option, because DMD crashes at 4gb of ram

What I need is DMD compiled with 64 bit pointer size
April 14, 2015
Memory overuse is usually reported as a bug in the compiler.
April 14, 2015
On Tuesday, 14 April 2015 at 01:31:27 UTC, Etienne wrote:
> I'm currently experiencing Out Of Memory errors when compiling in DMD on Windows
>
> Has anyone found a way to compile a DMD x86_64 compiler on Windows?

I've been having this same issue.
Over-use of CTFE is what's causing it on my part, to fix it, I've had to split my CTFE functions out into a seperate runtime tool (to make use of GC goodness. See people, GC is good! :))

The tool will print the code that my CTFE functions would normally generate to a file, and then use import to get it back into my main application.

Bit of a mess, but it works.

Dunno if this will help with your situation, as not sure if CTFE is causing it.
April 14, 2015
On Tuesday, 14 April 2015 at 09:57:55 UTC, wobbles wrote:
> On Tuesday, 14 April 2015 at 01:31:27 UTC, Etienne wrote:
>> I'm currently experiencing Out Of Memory errors when compiling in DMD on Windows
>>
>> Has anyone found a way to compile a DMD x86_64 compiler on Windows?
>
> I've been having this same issue.
> Over-use of CTFE is what's causing it on my part, to fix it, I've had to split my CTFE functions out into a seperate runtime tool (to make use of GC goodness. See people, GC is good! :))
>
> The tool will print the code that my CTFE functions would normally generate to a file, and then use import to get it back into my main application.
>
> Bit of a mess, but it works.
>
> Dunno if this will help with your situation, as not sure if CTFE is causing it.

It's actually a pretty big program, I'm compiling Botan with 80k lines of code, libasync, libhttp2, memutils, vibe.d together. I intend to build a pretty big library on top of it all, so i pretty much need the memory.

It takes about 3gb on x86, although i setup mscoff to link the high amount of symbols.

So, any idea if dmd can be moved to 64 bit anytime soon?
April 14, 2015
On Tuesday, 14 April 2015 at 01:31:27 UTC, Etienne wrote:
> I'm currently experiencing Out Of Memory errors when compiling in DMD on Windows
>
> Has anyone found a way to compile a DMD x86_64 compiler on Windows?

Short recipe:
Download & VisualStudio 2013 Community Edition
Download the DMD source OR clone from GitHub repository.
Start VS 2013.
Open solution dmd_msc_vs10.sln (in folser src)
Right click solution dmd_msc_vs10 and select Properties.
Change Configuration to Release and Platform to x64.
Right click solution dmd_msc_vs10 and select Rebuild.
Result is 64bit exex dmd_msc.exe in folder src.

Regards,
Kai

April 14, 2015
On 4/14/2015 3:47 PM, Kai Nacke wrote:
> Short recipe:
> Download & VisualStudio 2013 Community Edition
> Download the DMD source OR clone from GitHub repository.
> Start VS 2013.
> Open solution dmd_msc_vs10.sln (in folser src)
> Right click solution dmd_msc_vs10 and select Properties.
> Change Configuration to Release and Platform to x64.
> Right click solution dmd_msc_vs10 and select Rebuild.
> Result is 64bit exex dmd_msc.exe in folder src.
>
> Regards,
> Kai
>

Woa, you're awesome, thanks!