www.digitalmars.com         C & C++   DMDScript  

D.gnu - GDMD picking up wrong GDC

reply WebFreak001 <d.forum webfreak.org> writes:
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
parent reply Iain Buclaw <ibuclaw gdcproject.org> writes:
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 04 2023
parent reply WebFreak001 <d.forum webfreak.org> writes:
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
parent reply kinke <noone nowhere.com> writes:
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
parent Iain Buclaw <ibuclaw gdcproject.org> writes:
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.
May 07 2023