Building from source on Windows

forkit forkit at gmail.com
Sat Jan 29 06:44:54 UTC 2022


On Saturday, 29 January 2022 at 05:48:59 UTC, forkit wrote:
>
so now got a make on my system..whooohoooooo


c:\source\D\druntime>make --version
GNU Make 4.3
Built for x86_64-pc-msys
Copyright (C) 1988-2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later 
<http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

now going to proceed with the instructions for Building DRuntime 
(with Visual Studio):

https://wiki.dlang.org/Building_under_Windows

open a command prompt:

> call "C:\Program Files (x86)\Microsoft Visual 
> Studio\2017\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" x64

(ok it seems to run fine)

(instructions then say to run this:
set VCDIR="C:\Program Files (x86)\Microsoft Visual 
Studio\2017\Enterprise\VC"

but that env variable is already set in the win64.mak  ?? so why 
type the above command in?? which has a different value to what 
is in my win64.mak anyway ??

my settings in that file are (I have VS2017 enterprise installed):

----
.....

VCDIR=C:\Program Files (x86)\Microsoft Visual 
Studio\2017\Enterprise\VC\Tools\MSVC\14.15.26726

SDKDIR=C:\Program Files (x86)\Windows Kits\10\Include\10.0.17134.0

.....

CFLAGS=/Z7 /I"$(VCDIR)"\INCLUDE /I"$(SDKDIR)"\Include

....
-----

so I'll skip that part of the instruction and look at the next 
one:

make -f win64.mak -j4 "VCDIR=%VCDIR%" target

well, since I'm not setting VCDIR manually, but using the one in 
the win64.mak, I'll change that instruction to something simpler: 
make -f win64.mak

c:\source\D\druntime>make -f win64.mak
"make" -f mak/WINDOWS import 
DMD="..\dmd\generated\windows\release\64\dmd" HOST_DMD="dmd" 
MODEL=64 IMPDIR="import"
make[1]: Entering directory '/c/source/D/druntime'
make[1]: Nothing to be done for 'import'.
make[1]: Leaving directory '/c/source/D/druntime'
"make" -f mak/WINDOWS copydir HOST_DMD="dmd" MODEL=64 
IMPDIR="import"
make[1]: Entering directory '/c/source/D/druntime'
make[1]: Nothing to be done for 'copydir'.
make[1]: Leaving directory '/c/source/D/druntime'
"make" -f mak/WINDOWS copy 
DMD="..\dmd\generated\windows\release\64\dmd" HOST_DMD="dmd" 
MODEL=64 IMPDIR="import"
make[1]: Entering directory '/c/source/D/druntime'
if not exist generated md generated
/bin/sh: -c: line 1: syntax error: unexpected end of file
make[1]: *** [mak/WINDOWS:48: generated\windows\host_dmd.bat] 
Error 1
make[1]: Leaving directory '/c/source/D/druntime'
make: *** [win64.mak:76: copy] Error 2

oh great!@%$!@#



More information about the Digitalmars-d mailing list