GHC cannot find lrt

  • Open
  • quality assurance status badge
Details
2 participants
  • Antero Mejr
  • Mekeor Melire
Owner
unassigned
Submitted by
Antero Mejr
Severity
normal
Merged with
A
A
Antero Mejr wrote 3 days ago
(address . bug-guix@gnu.org)
877cswaw12.fsf@mailbox.org
Attempting to build a trivial Haskell program using ghc fails, as the
linker cannot find the rt library:

```
~ $ ghc -O2 test.hs
Linking test ...
/home/a/.guix-profile/bin/ld: cannot find -lrt: No such file or directory
collect2: error: ld returned 1 exit status
`gcc' failed in phase `Linker'. (Exit code: 1)
```

Glibc and gcc-toolchain are installed in the profile, and
~/.guix-profile/lib/librt.so.1 exists.

Maybe this is related to this new bug, or the recent core-updates merge?
M
M
Mekeor Melire wrote 2 days ago
(name . Antero Mejr)(address . antero@mailbox.org)(address . 63728@debbugs.gnu.org)
87zg5rpi0b.fsf@posteo.de
2023-05-25 22:25 bug-guix@gnu.org:

Toggle quote (3 lines)
> Attempting to build a trivial Haskell program using ghc fails,
> as the linker cannot find the rt library:

Does installing gcc-toolchain:static help as a work-around?
M
M
Mekeor Melire wrote 2 days ago
(name . Antero Mejr)(address . antero@mailbox.org)(address . 63728@debbugs.gnu.org)
87v8gfphu9.fsf@posteo.de
2023-05-25 22:25 bug-guix@gnu.org:

Toggle quote (18 lines)
> Attempting to build a trivial Haskell program using ghc fails,
> as the linker cannot find the rt library:
>
> ```
> ~ $ ghc -O2 test.hs
> Linking test ...
> /home/a/.guix-profile/bin/ld: cannot find -lrt: No such file or
> directory
> collect2: error: ld returned 1 exit status
> `gcc' failed in phase `Linker'. (Exit code: 1)
> ```
>
> Glibc and gcc-toolchain are installed in the profile, and
> ~/.guix-profile/lib/librt.so.1 exists.
>
> Maybe this is related to this new bug, or the recent
> core-updates merge? https://issues.guix.gnu.org/63238

There is also this bug I had reported:


I suggest to merge this bug (63728) and the bug I just linked
(63258). What do you think?
A
A
Antero Mejr wrote 2 days ago
(no subject)
(address . control@debbugs.gnu.org)(address . 63728@debbugs.gnu.org)
87lehbw2bj.fsf@mailbox.org
merge 63258 63728
A
A
Antero Mejr wrote 2 days ago
Re: bug#63728: GHC cannot find lrt
(name . Mekeor Melire)(address . mekeor@posteo.de)(address . 63728@debbugs.gnu.org)
87edn3w10l.fsf@mailbox.org
Mekeor Melire <mekeor@posteo.de> writes:

Toggle quote (7 lines)
> 2023-05-25 22:25 bug-guix@gnu.org:
>
>> Attempting to build a trivial Haskell program using ghc fails, as the linker
>> cannot find the rt library:
>
> Does installing gcc-toolchain:static help as a work-around?

I merged this bug with #63258.

The gcc-toolchain:static workaround fixes the rt problem, but now the
binaries aren't linked to libgmp and libffi, even though gmp and libffi
packages are installed in the profile:

Toggle snippet (11 lines)
~$ ghc -O2 test.hs
~$ ldd ./test
linux-vdso.so.1 (0x00007ffe0956f000)
libgmp.so.10 => not found
libc.so.6 => /gnu/store/gsjczqir1wbz8p770zndrpw4rnppmxi3-glibc-2.35/lib/libc.so.6 (0x00007fbe27e3f000)
libm.so.6 => /gnu/store/gsjczqir1wbz8p770zndrpw4rnppmxi3-glibc-2.35/lib/libm.so.6 (0x00007fbe27d62000)
libffi.so.8 => not found
libgcc_s.so.1 => /gnu/store/qcg59v4yg239jj1k0xvqqqkqv6l8q6ll-gcc-12.2.0-lib/lib/libgcc_s.so.1 (0x00007fbe27d41000)
/gnu/store/gsjczqir1wbz8p770zndrpw4rnppmxi3-glibc-2.35/lib/ld-linux-x86-64.so.2 => /gnu/store/ip9mj1pwymxi1yq32zbhwp3n3bycy6yi-glibc-2.35/lib/ld-linux-x86-64.so.2 (0x00007fbe2803d000)

Maybe there should be a ghc-toolchain package that has libgmp and
libffi as inputs, and makes sure GHC links them correctly?
?