Я собрал GCC 14.2.0 из исходных кодов на машине Oracle GNU/Linux 9.4 (компилятором дистрибутива которого является GCC 11.4.1). Сборка прошла нормально; но когда я теперь пытаюсь использовать его для создания какой-нибудь библиотеки, я получаю:
/usr/bin/ld: /home/joeusr/opt/gtest/lib64/libgtest.a(gtest-all.cc.o): undefined
reference to symbol '_ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE10_M_disposeEv@@GLIBCXX_3.4.21'
/usr/bin/ld: /home/joeuser/opt/versions/gcc/14.2.0/lib/../lib64/libstdc++.so.6:
error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
(строки разорваны для удобства чтения)
В чем/кто виноват и когда можно это исправить?
Дополнительная информация:
Моя команда конфигурации сборки GCC:
./configure --disable-ada --disable-gnat --disable-fortran
--disable-bootstrap --disable-multilib --disable-bootstrap
--without-isl --enable-languages=c,c++ --prefix=$HOME/opt/versions/gcc/14.2.0
--with-gmp=$HOME/opt/gmp --with-mpfr=$HOME/opt/mpfr --with-mpc=$HOME/opt/mpc
Подробнее здесь: https://stackoverflow.com/questions/793 ... efined-ref
Я создал версию GCC, отличную от версии системы, и теперь получаю «неопределенную ссылку» и «DSO отсутствует в командной ⇐ C++
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение