環境変数LD_PRELOADを私が作成した共有ライブラリファイルに設定しました。 LD_PRELOADが私が作成した共有ライブラリファイルを指すようにするには、次のようにフルパスを指定する必要があります。
export LD_PRELOAD=full/path/to/file.so
ただし、LD_PRELOADを共有ライブラリに割り当てると、フルパス/usr/lib/
を提供する必要がなく、root権限がないため、共有ライブラリファイルを配置できません。/usr/lib/
この場合、環境をどのように設定しますか?以下のように、完全ではないパスを使用する変数LD_PRELOAD:
export LD_PRELOAD=file.so
答え1
変数にリストされている名前は、実行可能ファイル自体に記載されているライブラリ名と同じようLD_PRELOAD
に参照されます。$LD_LIBRARY_PATH
したがって、プリロードするには、/full/path/to/file.so
次のものを使用できます。
export LD_LIBRARY_PATH=/full/path/to
export LD_PRELOAD=file.so