/usr/local/libで共有ライブラリを使用する

/usr/local/libで共有ライブラリを使用する

ソースからいくつかのライブラリを作成し、それ以降のファイルは次のmake install場所にあります。/usr/local/lib

たとえば、私の場合、私のファイルはこのlibodb-2.2.soディレクトリにあります。

ただし、リンクされた実行可能ファイルを実行すると、libodb次のエラーが発生します。共有ライブラリの読み込み中にエラーが発生しました。libodb-2.2.so: cannont open shared object file: No such file or directory.

これは、実行可能ファイルを正しくビルドしないという意味ですか?それとも、そのフォルダにも/usr/local/lib興味深いライブラリがある可能性があることをシステムに知らせる必要がありますか?

私はUbuntu 12.04、Linuxカーネル3.2.0-38-genericを使用しています。

ベストアンサー1

現在のセッションでは、次のことができます。

LD_LIBRARY_PATH=/lib:/usr/lib:/usr/local/lib エクスポート

または、変更を永続的に適用するには/usr/local/lib/etc/ld.so.confまたは含まれている内容)を追加してldconfigrootとして実行できます。

それでも問題がある場合は、実行すると、検索しようとしているldd [executable name]ライブラリと見つからないライブラリが表示されます。

おすすめ記事