Guide for dmd development @ Win64?
Kapps via Digitalmars-d
digitalmars-d at puremagic.com
Mon Aug 4 20:28:50 PDT 2014
On Tuesday, 5 August 2014 at 03:17:11 UTC, Kapps wrote:
> 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.
I forgot, also needed to change from ..\lib to ..\..\phobos as
the lib path in sc.ini. That is:
[Environment64]
LIB="%@P%\..\..\phobos\"
My directory layout is
dmd
dmd
druntime
phobos
tools
And my sc.ini looks like http://pastie.org/9445982.
More information about the Digitalmars-d
mailing list