www.digitalmars.com         C & C++   DMDScript  

D.gnu - Bootstrapping GDC with DMD

reply Brian Callahan <bcallah openbsd.org> writes:
Hi all —

In case it is useful to anyone else, I documented how I 
bootstrapped GDC with DMD, with a freely available tool so that 
you can too.

https://briancallahan.net/blog/20260713.html

~Brian
Jul 13
parent reply Iain Buclaw <ibuclaw gdcproject.org> writes:
On Monday, 13 July 2026 at 18:14:34 UTC, Brian Callahan wrote:
 Hi all —

 In case it is useful to anyone else, I documented how I 
 bootstrapped GDC with DMD, with a freely available tool so that 
 you can too.

 https://briancallahan.net/blog/20260713.html

 ~Brian
Thanks for the write-up. The GCC ports for Darwin (also PPC) and Solaris (x86 and SPARC) regularly(-ish?) test bootstrapping the current mainline version of D with the oldest supported version of GDC - there's a reason why it says 9.4, and not 9.x. [Darwin is a bit more involved as they test bootstrap from apple-gcc 4.2 -> gcc 17.x, with all the odd jumps in between for Ada, C++, and D] You are correct that there's nothing preventing the use of another D compiler to bootstrap GDC. So long as it can create a static executable, it will do. For the sake of comparing notes, I did put out a little proof-of-concept gist around the time of the 12.1 release, as at least one distro packager asked at the time. dmd: https://gist.github.com/ibuclaw/73f91fd66b5d4a1a6ad29d739be627c1 ldc: https://gist.github.com/ibuclaw/e6733142a8644ffb53106cc9986372fa Iain.
Jul 14
parent Brian Callahan <bcallah openbsd.org> writes:
On Tuesday, 14 July 2026 at 15:47:12 UTC, Iain Buclaw wrote:
 On Monday, 13 July 2026 at 18:14:34 UTC, Brian Callahan wrote:
 Hi all —

 In case it is useful to anyone else, I documented how I 
 bootstrapped GDC with DMD, with a freely available tool so 
 that you can too.

 https://briancallahan.net/blog/20260713.html

 ~Brian
Thanks for the write-up. The GCC ports for Darwin (also PPC) and Solaris (x86 and SPARC) regularly(-ish?) test bootstrapping the current mainline version of D with the oldest supported version of GDC - there's a reason why it says 9.4, and not 9.x. [Darwin is a bit more involved as they test bootstrap from apple-gcc 4.2 -> gcc 17.x, with all the odd jumps in between for Ada, C++, and D] You are correct that there's nothing preventing the use of another D compiler to bootstrap GDC. So long as it can create a static executable, it will do. For the sake of comparing notes, I did put out a little proof-of-concept gist around the time of the 12.1 release, as at least one distro packager asked at the time. dmd: https://gist.github.com/ibuclaw/73f91fd66b5d4a1a6ad29d739be627c1 ldc: https://gist.github.com/ibuclaw/e6733142a8644ffb53106cc9986372fa Iain.
Thanks Iain! I probably would have used your scripts had I found them before writing my own :) ~Brian
Jul 16