Thread overview
GDMD picking up wrong GDC
May 04, 2023
WebFreak001
May 04, 2023
Iain Buclaw
May 07, 2023
WebFreak001
May 07, 2023
kinke
May 07, 2023
Iain Buclaw
May 04, 2023

In GitHub Actions I installed sudo apt install gdc-12 now inside Ubuntu 22.04, however gdc still seemed to be a small extra package that's symlinking gdc to gdc-11.

Now gdmd is picking up GDC 11 instead of GDC 12, causing issues in the build.

Is there a way to tell gdmd to use GDC 12? Right now I hacked around this by doing

sudo rm /usr/bin/gdc
sudo ln -s /usr/bin/gdc-12 /usr/bin/gdc

but if this wasn't a CI, I wouldn't really wanna do this.

Would it be possible to provide extra gdmd scripts like gdmd-12 that pick gdc-12 on Ubuntu?

see commit https://github.com/dlang-community/libdparse/commit/03099519982c10b9d7831771bcb744f06b727400

Since this is manual DMD invocation, and not dub, I can't just specify gdc-12 as compiler.

May 04, 2023

On Thursday, 4 May 2023 at 13:05:07 UTC, WebFreak001 wrote:

>

In GitHub Actions I installed sudo apt install gdc-12 now inside Ubuntu 22.04, however gdc still seemed to be a small extra package that's symlinking gdc to gdc-11.

Now gdmd is picking up GDC 11 instead of GDC 12, causing issues in the build.

Is there a way to tell gdmd to use GDC 12? Right now I hacked around this by doing

I imagine what you're seeing is gdmd using the correct version of the compiler, just not the one you wanted.

https://github.com/D-Programming-GDC/gdmd/blob/master/dmd-script#L71-L76

May 07, 2023

On Thursday, 4 May 2023 at 14:58:48 UTC, Iain Buclaw wrote:

>

On Thursday, 4 May 2023 at 13:05:07 UTC, WebFreak001 wrote:

>

In GitHub Actions I installed sudo apt install gdc-12 now inside Ubuntu 22.04, however gdc still seemed to be a small extra package that's symlinking gdc to gdc-11.

Now gdmd is picking up GDC 11 instead of GDC 12, causing issues in the build.

Is there a way to tell gdmd to use GDC 12? Right now I hacked around this by doing

I imagine what you're seeing is gdmd using the correct version of the compiler, just not the one you wanted.

https://github.com/D-Programming-GDC/gdmd/blob/master/dmd-script#L71-L76

I have multiple GDCs installed through apt, how do I make gdmd pick the higher one (gdc-12) and not just gdc?

May 07, 2023

On Sunday, 7 May 2023 at 13:41:43 UTC, WebFreak001 wrote:

>

I have multiple GDCs installed through apt, how do I make gdmd pick the higher one (gdc-12) and not just gdc?

With e.g. ln -s gdmd /usr/bin/gdmd-12, and then using gdmd-12. As shown by the few linked lines in the Perl script, the gdmd script invoked as [prefix-][g]dmd[-suffix] invokes a [prefix-]gdc[-suffix] in the same directory.

May 07, 2023

On Sunday, 7 May 2023 at 16:23:31 UTC, kinke wrote:

>

On Sunday, 7 May 2023 at 13:41:43 UTC, WebFreak001 wrote:

>

I have multiple GDCs installed through apt, how do I make gdmd pick the higher one (gdc-12) and not just gdc?

With e.g. ln -s gdmd /usr/bin/gdmd-12, and then using gdmd-12. As shown by the few linked lines in the Perl script, the gdmd script invoked as [prefix-][g]dmd[-suffix] invokes a [prefix-]gdc[-suffix] in the same directory.

Correct, sparc-gdmd invokes sparc-gdc; gdmd-latest invokes gdc-latest, and so on and so forth.