compiler-explorer / compiler-explorer

Run compilers interactively from your web browser and interact with the assembly

Home Page:https://godbolt.org/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[BUG]: EDG does not link to libfmt

dangelog opened this issue · comments

Describe the bug

When using libfmt on CE with the EDG frontend, the program compiles, but the linker complains about the library not being found:

Could not execute the program
Compiler returned: 2
Compiler stderr

library "fmtd" does not exist in the specified library directories
C++ prelinker: error: command line error
/opt/compiler-explorer/gcc-13.2.0/bin/../lib/gcc/x86_64-linux-gnu/13.2.0/../../../../x86_64-linux-gnu/bin/ld: cannot find -lfmtd: No such file or directory
collect2: error: ld returned 1 exit status

Related issues: #5970 , #966

Steps to reproduce

  1. Visit CE
  2. Select an EDG-GNU compiler
  3. Add libfmt 10.2.1 to the libraries
  4. Add an executor for the compiler
  5. Build anything

Expected behavior

It should be able to link+run when using libfmt.

Reproduction link

https://gcc.godbolt.org/z/jEj46YW5h

Screenshots

Not applicable

Operating System

No response

Browser version

No response

Clang (reflection) also seems to have the same problem, while Clang 18 / GCC 13 are fine. Is it just a stale cache somewhere?

No, the EDG is not recognized as a working compiler by cmake https://conan.compiler-explorer.com/getlogging/20240331133436

The compiler seems to not support -Wl,rpath

override getSharedLibraryPathsAsArguments() {

We can probably work around that

I have fixed the rpath issue, but a new issue has popped up that I can't fix.
https://conan.compiler-explorer.com/getlogging/20240412030928