コンパイルされた ELF 実行可能プログラムで、実行時に必要なダイナミック ライブラリの .so ファイルを現在のディレクトリで検索します。

LD_LIBRARY_PATH 環境変数を使用して、動的ライブラリ検索パスを指定します。具体的な手順は次のとおりです。
実行可能プログラムとダイナミック ライブラリ ファイルを同じディレクトリ (/path/to/myapp など) にコピーします。

ターミナルを開き、/path/to/myapp ディレクトリを入力します。

LD_LIBRARY_PATH 環境変数を設定して、現在のディレクトリをダイナミック ライブラリ検索パスに追加します。次に例を示します。

export LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH

ここは.現在のディレクトリを表し、$LD_LIBRARY_PATH元の動的ライブラリ検索パスを表します。exportこのコマンドを使用してLD_LIBRARY_PATH環境変数を現在のシェルの環境にエクスポートし、後続のコマンドでその環境変数を使用できるようにします。

次のような実行可能プログラムを実行します。

./myapp

実行時に、ダイナミック ライブラリ リンカーはまず現在のディレクトリでダイナミック ライブラリ ファイルを検索し、見つからない場合は他のパスで検索を続けます。

LD_LIBRARY_PATH 環境変数を使用して動的ライブラリ検索パスを指定すると、ユーザーは実行時に任意の場所から動的ライブラリ ファイルをロードできるため、セキュリティ リスクが生じる可能性があることに注意してください。したがって、この方法は開発およびテスト段階でのみ使用し、運用環境では使用しないことをお勧めします。

おすすめ

転載: blog.csdn.net/weixin_43074760/article/details/131470652