Linuxバイナリにライブラリ/依存関係を認識して使用する方法は?ローカルライブラリ、つまり/usr/local/binにインストールしたので、/usr/local/libにありますか?
ベストアンサー1
ライブラリ検索パスは、データベースエントリを介してシステムレベルで制御したり、/etc/ld.so.cache
環境変数を設定してアプリケーションレベルで制御したりできます。LD_LIBRARY_PATH
システム全体
必要なライブラリを含むディレクトリをに追加します/etc/ld.conf.d
。一部のシステムでは、そのライブラリをに直接追加する必要があります/etc/ld.conf
。
ldconfig
ライブラリデータベースを更新するには実行してください。/etc/ld.so.cache
アプリケーション
LD_LIBRARY_PATH
アプリケーションコンテキストに必要なライブラリを含むディレクトリ(またはディレクトリ)を含めるように設定または拡張します。
LD_LIBRARY_PATH="/usr/local/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" /usr/local/bin/your_app arg1 arg2…
LD_LIBRARY_PATH
空の場合、またはアプリケーションに関連するコンテンツがまったく含まれていないことを保証できる場合は、この呼び出しを簡素化できます。
LD_LIBRARY_PATH=/usr/local/lib /usr/local/bin/your_app arg1 arg2…
どちらの場合も、すでに持っている場合は、アプリケーションへの明示的なパスを使用しないことで単純化できます/usr/local/bin
。$PATH
例えば、
LD_LIBRARY_PATH=/usr/local/lib your_app arg1 arg2…