Alex Vong <alexvong1...@gmail.com> skribis: > I think it is weird. It seems only dynamic linking with "libc" or "libm" > fails, dynamic linking with external library like "libpcre2-8" or > anyhome-made shared library would work. And yes, "libc-2.22" and > "libm-2.22" also works for me.
I think that’s because libm.so and libc.so are linker scripts, whereas libm-2.22.so and libc-2.22.so are the actual ELF files: --8<---------------cut here---------------start------------->8--- $ cat ~/.guix-profile/lib/libm.so /* GNU ld script */ OUTPUT_FORMAT(elf64-x86-64) GROUP ( /gnu/store/qv7bk62c22ms9i11dhfl71hnivyc82k2-glibc-2.22/lib/libm.so.6 AS_NEEDED ( /gnu/store/qv7bk62c22ms9i11dhfl71hnivyc82k2-glibc-2.22/lib/libmvec.so.1 ) ) $ cat ~/.guix-profile/lib/libc.so /* GNU ld script Use the shared library, but some functions are only in the static library, so try that secondarily. */ OUTPUT_FORMAT(elf64-x86-64) GROUP ( /gnu/store/qv7bk62c22ms9i11dhfl71hnivyc82k2-glibc-2.22/lib/libc.so.6 /gnu/store/qv7bk62c22ms9i11dhfl71hnivyc82k2-glibc-2.22/lib/libc_nonshared.a AS_NEEDED ( /gnu/store/qv7bk62c22ms9i11dhfl71hnivyc82k2-glibc-2.22/lib/ld-linux-x86-64.so.2 ) ) --8<---------------cut here---------------end--------------->8--- Ludo’.