https://gcc.gnu.org/bugzilla/show_bug.cgi?id=126176

            Bug ID: 126176
           Summary: libgcc_s is not found on riscv64-linux-gnu
           Product: gcc
           Version: 16.1.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: driver
          Assignee: unassigned at gcc dot gnu.org
          Reporter: qcf at ecnelises dot com
  Target Milestone: ---

Created attachment 64974
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=64974&action=edit
detail log

Configure with

./configure --prefix=GCC16_INSTALL \
  --build="riscv64-linux-gnu" --host="riscv64-linux-gnu"
--target="riscv64-linux-gnu" \
  --enable-threads=posix --enable-languages=c,c++ \
  --disable-bootstrap \
  --enable-clocale=gnu \
  --enable-libstdcxx-time=yes \
  --enable-gnu-unique-object \
  --disable-multilib \
  --disable-nls

Make and install. Use this GCC to compile a hello-world C program, see error:

/usr/bin/ld: cannot find -lgcc_s_asneeded: No such file or directory
/usr/bin/ld: cannot find -latomic_asneeded: No such file or directory

Dumped LIBRARY_PATH are:

- GCC16_INSTALL/lib/gcc/riscv64-linux-gnu/16.1.0/
- /lib/riscv64-linux-gnu/
- /lib/
- /usr/lib/riscv64-linux-gnu/
- /usr/lib/

Since on riscv64 libstdc++.so/libgcc_s.so are put under `lib`, they are not
found.

Also found this issue with GCC 14.2 riscv64. Other versions not tested.

While on X86, LIBRARY_PATH are (14.2 tested):

- GCC_INSTALL/lib/gcc/x86_64-linux-gnu/14.2.0/
- GCC_INSTALL/lib/gcc/x86_64-linux-gnu/14.2.0/../../../../lib64/
- /lib/x86_64-linux-gnu/
- /lib/../lib64/
- /usr/lib/x86_64-linux-gnu/
- /usr/lib/../lib64/
- GCC_INSTALL/lib/gcc/x86_64-linux-gnu/14.2.0/../../../
- /lib/
- /usr/lib/

Reply via email to