Windows devs - how are you building dmd, druntime, phobos?

Meta jared771 at gmail.com
Sat Jul 27 21:39:46 UTC 2019


On Thursday, 25 July 2019 at 16:09:37 UTC, Meta wrote:
> On Thursday, 25 July 2019 at 13:12:58 UTC, Atila Neves wrote:
>> For dmd, neither win32.mak or win64.mak work for me at all. 
>> I'm at a loss as to how they work for the autotester. 
>> Fortunately I learned about build.d on github, and that works 
>> fine.
>>
>> But then I tried druntime and couldn't build that with the 
>> Windows makefile. There's no build.d there though, at least 
>> not with that name. The makefile seems to try creating 
>> directories more than once and fails.
>>
>> Given all the above, how is that people on Windows manage to 
>> work on the 3 core D repos? I'm trying to fix the situation 
>> (mostly so I can get the dmd bash tests to run there), but 
>> first I'd like to know if I'm doing something wrong.
>>
>> Bear in mind I've build all 3 repos repeatedly on Windows 
>> before...
>
> I used to build very often on Windows. I'll give it a try 
> tonight and report back.

Well, better late than never. I made a fresh clone of dmd's repo 
and first tried building 64-bit dmd. All I had to do was the 
following:

git clone https://github.com/dlang/dmd.git
cd dmd
make -fwin64.mak
(Note you also need to define HOST_DC in your enviroment)

HOWEVER, it failed halfway through building:

std.process.ProcessException at std\process.d(754): Failed to spawn 
new process (The system cannot find the file specified.)
----------------
0x0040B0FC in @trusted std.process.Pid 
std.process.spawnProcessImpl(scope const(char)[], std.stdio.File, 
std.stdio.File, std.stdio.File, 
const(immutable(char)[][immutable(char)[]]), std.process.Config, 
const(char)[])
0x00405564 in @trusted std.process.Pid 
std.process.spawnProcess(scope const(char[])[], std.stdio.File, 
std.stdio.File, std.stdio.File, 
const(immutable(char)[][immutable(char)[]]), 
std.process.Configconst , char[])
0x00402547 in _Dmain
0x00404A0F in void rt.dmain2._d_run_main(int, char**, extern (C) 
int function(char[][])*).runAll().__lambda1()
0x00404991 in void rt.dmain2._d_run_main(int, char**, extern (C) 
int function(char[][])*).runAll()
0x0040482A in _d_run_main
0x004045DC in main at F:\repos\dmd\src\vcbuild\msvc-lib.d(7)
0x0044E799 in mainCRTStartup
0x779A0419 in BaseThreadInitThunk
0x77C7662D in RtlGetAppContainerNamedObjectPath
0x77C765FD in RtlGetAppContainerNamedObjectPath

--- errorlevel 1

--- errorlevel 1

--- errorlevel 1

--- errorlevel 1



I'm hitting this same error with 32-bit dmd.


I also triedVisual Studio project, and it built dmd with no 
problems whatsoever.



More information about the Digitalmars-d mailing list