GNU/Linux >> Linux の 問題 >  >> Linux

/usr/lib/x86_64-linux-gnu/libstdc++.so.6:バージョン CXXABI_1.3.8' が見つかりません

ライブラリのパスを LD_LIBRARY_PATH に追加します 環境変数

TL;DR

GCC では、適切なバージョンが見つからない場合、ライブラリの場所を手動で指定する必要があります。これは、いくつかの方法で実行できます。 1 つは LD_LIBRARY_PATH に追加することです .

export LD_LIBRARY_PATH="/usr/local/lib64/:$LD_LIBRARY_PATH"

一部のライブラリ パスは /usr/local/lib64/ になります。 .他の人がライブラリ パス /usr/lib/x86_64-linux-gnu/ を報告しています

ライブラリを LD_LIBRARY_PATH に追加する必要があるのはなぜですか ?

GCC をコンパイルしてインストールすると、これらのディレクトリのいずれかにライブラリが配置されますが、それだけです。 libstdc++ の FAQ によると 、私たちが得たエラーは、ダイナミックリンカーが間違ったバージョンの libstdc++ を見つけたことを意味します 共有ライブラリ。リンカは正しいバージョンを見つけられないため、libstdc++ の場所をリンカに伝える必要があります。

<ブロック引用>

これを修正する最も簡単な方法は、リンカーが共有ライブラリを検索するディレクトリのコロンで区切られたリストである LD_LIBRARY_PATH 環境変数を使用することです。

この問題を解決する方法は他にもあります。 gcc をインストールすると、これと簡単に説明されている他の解決策を見つけることができます make の出力を読んだ場合:

<ブロック引用>

ライブラリは次の場所にインストールされています:

/usr/local/lib/../lib32

あるディレクトリ LIBDIR にインストールされたライブラリに対してリンクしたい場合は、libtool を使用してライブラリのフル パス名を指定するか、リンク中に `-LLIBDIR' フラグを使用して少なくとも 1 つの以下:

  • 実行時に LIBDIR を環境変数 LD_LIBRARY_PATH に追加
  • リンク時に LIBDIR を環境変数 `LD_RUN_PATH' に追加
  • 「-Wl,-rpath -Wl,LIBDIR」リンカー フラグを使用する
  • システム管理者に LIBDIR を `/etc/ld.so.conf' に追加してもらいます

詳細については、ld(1) や ld.so(8) のマニュアル ページなど、共有ライブラリに関するオペレーティング システムのドキュメントを参照してください。

うーん、それは簡単でした!また、「インストール済みのライブラリにリンクしたくなったら」本気ですか?


TopTracker をインストールしようとしたときに、Ubuntu 14.04 でも同じ問題が発生しました。次のようなエラーが発生しました:

<ブロック引用>

/usr/share/toptracker/bin/TopTracker:/usr/lib/x86_64-linux-gnu/libstdc++.so.6:バージョン 'CXXABI_1.3.8' が見つかりません (/usr/share/toptracker/bin/TopTracker で必要)/ usr/share/toptracker/bin/TopTracker:/usr/lib/x86_64-linux-gnu/libstdc++.so.6:バージョン 'GLIBCXX_3.4.21' が見つかりません (/usr/share/toptracker/bin/TopTracker で必要)/usr /share/toptracker/bin/TopTracker:/usr/lib/x86_64-linux-gnu/libstdc++.so.6:バージョン 'CXXABI_1.3.9' が見つかりません (/usr/share/toptracker/bin/TopTracker で必要)

しかし、その後、gcc 4.9 バージョンをインストールしたところ、問題は解決しました:

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-4.9 g++-4.9

Linux
  1. Ubuntu 14.04で構築されたWebpユーティリティが機能せず、ライブラリエラーが表示されるのはなぜですか?

  2. バイナリを /bin、/sbin、/usr/bin、および /usr/sbin にインストールし、 --prefix および DESTDIR と対話します

  3. gcc - /usr/bin/ld エラー:/usr/local/lib で <library> が見つかりませんが、ldconfig にリストされており、パスが ld.so.conf に追加されています

  1. cmake --version は /usr/bin/cmake を指し、どの cmake は /usr/local/bin を指しますか

  2. /dev/shm/ と /tmp/ はいつ使用する必要がありますか?

  3. /usr/sbin、/usr/local/sbin、/usr/local/bin の意味は何ですか?

  1. Arch on WSL:インストールされているにもかかわらず、libQt5Core.so.5 が見つかりません

  2. なぜ /home 以外のものを別のパーティションに入れるのですか?

  3. /bin と /usr/bin の違い