新しいバージョンのGCCをインストールしてデフォルトバージョンにする方法は?

新しいバージョンのGCCをインストールしてデフォルトバージョンにする方法は?

私のLinux(Ubuntu)システムに新しいバージョンをビルドしてインストールしたgcc/opt/gcc-10.2.0

その後、デフォルト値/update-alternativesに設定しました。gccg++

ただし、動作し、新しいバージョンでビルドされたプログラムは、.NETのバージョンではなく古いgccバージョンに接続され続けます。libstdc++/usr/lib/x86_64-linux-gnu/opt/gcc-10.2.0/lib64

システムがlibstdc++C ++ 11より前のABIを使用している場合は問題になる可能性があります。これは起動時にアプリケーションがクラッシュする可能性があるためです。

libstc++最新バージョンのGCCをインストールし、それをユーザーの「デフォルトコンパイラ」にし、それを使用して作成されたプログラムがそのコンパイラにバンドルされていることを確認する方法はありますかlibgcc

最新のGCCバージョンを使用するビルドサーバーを作成したいので、この質問をします。

答え1

  • コンパイルされたプログラムの移植性が向上するため、これは実際には良い方法です。
  • -L/opt/gcc-10.2.0/lib64コンパイルフラグに追加してみることができます。
  • 可能ですsudo mkdir /usr/lib64/save; sudo mv -iv /usr/lib64/libstdc++* /usr/lib64/save。お勧めできません。

関連情報