Does anyone know how druntime gets built?

forkit forkit at gmail.com
Fri Jun 24 04:07:54 UTC 2022


On Tuesday, 21 June 2022 at 06:27:23 UTC, Walter Bright wrote:
> There are no instructions for it. Trying the obvious does not 
> work.
>
> https://issues.dlang.org/show_bug.cgi?id=23193


btw. these are the **exact** steps I take to build D, on my linux 
system:

NOTE: It creates the build into a different directory, not my dmd 
directory,
as I like to keep the build separate from my actual installation.


# mkdir /ramdisk/dlang
# cd /ramdisk/dlang

(now clone the source from git)
# git clone https://github.com/dlang/dmd;git clone 
https://github.com/dlang/druntime;git clone 
https://github.com/dlang/phobos;git clone 
https://github.com/dlang/tools

(now I use one big long concatenated command, and sit back till 
it's done.)
# cd /ramdisk/dlang/dmd;make -f posix.mak -j8 
INSTALL_DIR=/home/user/opt/dmdnew install;cd 
/ramdisk/dlang/druntime;make -f posix.mak -j8 VERBOSE=1 
INSTALL_DIR=/home/user/opt/dmdnew install;cd 
/ramdisk/dlang/phobos;make -f posix.mak -j8 VERBOSE=1 
INSTALL_DIR=/home/user/opt/dmdnew install;cd 
/ramdisk/dlang/tools;make -f posix.mak -j8 VERBOSE=1 
INSTALL_DIR=/home/user/opt/dmdnew/tools install;/usr/bin/cp -fR 
/ramdisk/dlang/dmd/src/dmd /home/user/opt/dmdnew/src;/usr/bin/cp 
-fR /ramdisk/dlang/druntime /home/user/opt/dmdnew/src

(hopefully, it all built correctly).

Now I create a link in my bin directory to the newly build dmd

/home/user/bin/dmdnew -> /home/user/opt/dmdnew/linux/bin64/dmd

That way I can switch between dmd and dmdnew, painlessly.

If you're using an actual ramdisk, as I do, consider the 
implications of that ;-)


More information about the Digitalmars-d mailing list