Как установить новую версию GCC и сделать ее версией по умолчанию?

Как установить новую версию GCC и сделать ее версией по умолчанию?

Я собрал и установил новую версию gccна свой компьютер с Linux (Ubuntu) и установил ее в формате /opt/gcc-10.2.0.

Затем я update-alternativesсделал это значением по умолчанию gcc/ g++.

Это работает, однако программы, созданные с использованием новой версии, gccпо-прежнему ссылаются на старую libstdc++версию /usr/lib/x86_64-linux-gnu, а не на ту, что находится в /opt/gcc-10.2.0/lib64.

Это является проблемой, если система libstdc++использует ABI до C++11, поскольку это приведет к сбою приложения во время запуска.

Есть ли способ установить более новую версию GCC и сделать ее «компилятором по умолчанию» для пользователя, а также гарантировать, что программы, собранные с ее помощью, будут связаны с libstc++libgcc), поставляемыми с этим компилятором?

Я спрашиваю об этом, потому что хочу создать сервер сборки, использующий самую последнюю версию GCC.

решение1

  • На самом деле это хорошо, поскольку ваши скомпилированные программы становятся более переносимыми.
  • Вы можете попробовать добавить -L/opt/gcc-10.2.0/lib64в свои компиляции флаги.
  • Можно sudo mkdir /usr/lib64/save; sudo mv -iv /usr/lib64/libstdc++* /usr/lib64/save, но это не рекомендуется.

Связанный контент