Guide for dmd development @ Win64?

Kapps via Digitalmars-d digitalmars-d at puremagic.com
Mon Aug 4 20:17:10 PDT 2014


On Tuesday, 5 August 2014 at 02:43:13 UTC, Dicebot wrote:
> On Monday, 4 August 2014 at 22:48:51 UTC, Orvid King wrote:
>> Yep, you'll need to update VCDIR at the top of updateAll.sh to 
>> point into the 2013 Visual Studio directory rather than the 
>> 2010 directory. (I believe it should be 12.0)
>
> I had to change much more than that but finally got it to the 
> point of actually running `make -f win64.mak` for druntime. 
> There it fails trying to compile errno.c  with a system error 
> "mspdb120.dll is missing". Googling for this message finds 
> suggestions to kill "mspdbsrv.exe" process but there is no such 
> process running >_<

Steps I had to do (coincidentally, just today):

1) Edit win64.mak on druntime / phobos to change from 10.0 to 
12.0 for VS, and from v7.0A to v8.1A for SDK directory.
2) Edit sc.ini where it says the mspdb*.dll line, remove the 
x86_amd64/bin or such and just make it 
"PATH=%PATH%;%VCINSTALLDIR%\bin\;%VCINSTALLDIR%\..\Common7\IDE". 
This should fix the error you're having.
3) Edit the tools win32.mak to use -m64 and thus actually be 
64-bit. The makefiles don't use a different folder for x86 and 
x64, so you can't have a 32-bit version of phobos and 64-bit 
version of phobos at same time, so tools needs to be built for 
64-bit. Then I removed everything but ddemangle and rdmd from the 
targets.

Basically, the Windows makefiles are a bit of a mess because they 
don't allow 32-bit and 64-bit versions at the same time and 
assume VS2010.

After these changes I was successfully able to build the tools 
repository.


More information about the Digitalmars-d mailing list