プラットフォームがLD_LIBRARY_PATHを提供するタイミングを決定しますか?

プラットフォームがLD_LIBRARY_PATHを提供するタイミングを決定しますか?

LD_LIBRARY_PATHプラットフォームが任意の場所からライブラリをロードする機能を提供する場合を検出したいと思います。アプリケーションは軽量シェルスクリプトなので、プログラムをコンパイル、リンク、実行する必要がない方法を探しています。

私は、偽のプログラムと偽の共有オブジェクトをコンパイルして実行するのを避けようとしています。また、test "$IS_LINUX_OS"のようなテストを避けようとしていますが、test "$IS_SOLARIS_OS"必要に応じて再処理します。

Open Groupサイトを検索しましたが、Posix関連のパス機能や環境の検索結果はありません。

プラットフォームがそれをサポートしていることを確認するための迅速で移植可能なテストはありますかLD_LIBRARY_PATH

ベストアンサー1

私はこれらのシステムについて知らないいいえLD_LIBRARY_PATHはサポートされていますが、GNU libcローダーはこのシンボルの存在を非常に迅速に検出できます。

grep LD_LIBRARY_PATH /lib/ld-*.so*

(.soファイルはLD_LIBRARY_PATHを読み込み、プログラムに必要な残りのライブラリをロードする役割を果たします。)

おすすめ記事