ホームページ  >  記事  >  運用・保守  >  Linux ldconfigとは何ですか

Linux ldconfigとは何ですか

藏色散人
藏色散人オリジナル
2023-03-28 09:56:112087ブラウズ

linux ldconfig はダイナミック リンク ライブラリ管理コマンドで、主にデフォルトの検索ディレクトリ "/lib" および "/usr/lib" とダイナミック ライブラリ設定ファイル "/etc/ld.so" で使用されます。 conf" リストされたディレクトリで共有可能なダイナミック リンク ライブラリを検索します。通常、ldconfig はシステムの起動時に実行され、ユーザーが新しいダイナミック リンク ライブラリをインストールするときは、ldconfig コマンドを手動で実行する必要があります。

Linux ldconfigとは何ですか

#このチュートリアルの動作環境: linux5.9.8 システム、Dell G3 コンピューター。

Linux ldconfig とは何ですか?

ldconfig はダイナミック リンク ライブラリ管理コマンドです。このコマンドの主な目的は、デフォルトの検索ディレクトリ (/lib および /usr/lib) とダイナミック ライブラリを検索することです。構成ファイル/etc/ld.so.conf にリストされているディレクトリで、共有可能なダイナミック リンク ライブラリを検索します (形式は前に紹介したとおり、lib*.so*)。ダイナミック リンク ライブラリを作成しますプログラムをロードするために必要な接続ファイルとキャッシュ ファイル (ld.so)。キャッシュ ファイルのデフォルトは /etc/ld.so.cache です。ファイルはソートされたダイナミクスを保存します。リンク ライブラリ名 list.

ldconfig は通常、システムの起動時に実行されます。ユーザーが新しいダイナミック リンク ライブラリをインストールする場合、このコマンドは手動で実行する必要があります。

ldconfig コマンド パラメータの説明:

1、-v または –verbose: このオプションを使用すると、ldconfig はスキャンされているディレクトリと検索されたダイナミック リンク ライブラリを表示します。作成する接続の名前。

2、-n: このオプションを使用すると、ldconfig は、デフォルトのディレクトリ (/lib、/usr/lib) ではなく、コマンド ラインで指定されたディレクトリのみをスキャンします。構成ファイル /etc/ld.so.conf.

3 にリストされているディレクトリ、 -N: このオプションは、キャッシュ ファイル (/etc/ld.so.cache) を再構築しないように ldconfig に指示します。 X はオプションを使用しません。ldconfig は通常どおりファイル接続を更新します。

4, -X: このオプションは、ldconfig にファイル接続を更新しないように指示します。-N オプションが使用されない場合、キャッシュされたファイルは更新されます通常.

5 , -f CONF: このオプションは、ダイナミック リンク ライブラリの構成ファイルを CONF として指定します。システムのデフォルトは /etc/ld.so.conf.

6, - C CACHE: このオプションは、生成されたキャッシュ ファイルを CACHE として指定します。システムのデフォルトは /etc/ld.so.cache です。このファイルには、共有可能なダイナミック リンク ライブラリの並べ替えられたリストが保存されます。

7. -r ROOT: これこのオプションはアプリケーションのルートを変更します。ディレクトリは ROOT です (chroot 関数の呼び出しによって実装されます)。このオプションを選択すると、システムのデフォルト設定ファイル /etc/ld.so.conf は実際には ROOT/etc/ld.so に対応します。たとえば、 -r/ を使用します。 usr/zzz が使用されている場合、設定ファイル /etc/ld.so.conf が開かれると、実際には /usr/zzz/etc/ld.so.conf ファイルが開きます。このオプションを使用すると、ダイナミック リンク ライブラリ管理の柔軟性が大幅に向上します。.

8, -l: 通常、ldconfig は、ダイナミック リンク ライブラリを検索するときに、ダイナミック リンク ライブラリへの接続を自動的に確立します。 item.

9、-p または –print-cache: このオプションは、ldconfig に印刷を指示します。現在のキャッシュ ファイルに保存されているすべての共有ライブラリの名前を出力します。

10, -c FORMAT または –format =FORMAT: このオプションは、キャッシュ ファイルに使用される形式を指定するために使用されます。次の 3 つのタイプがあります: ld (古い形式)、新しい (新しい形式)、および compat (互換性のある形式、これがデフォルトの形式です).

11. -V: このオプションは、ldconfig のバージョン情報を出力して終了します。

12、- または --help または –usage: これら 3 つのオプションは同じ効果があり、すべて ldconfig がヘルプ情報を出力してから終了します。

注意事項ldconfig:

1. /lib および /usr/lib に何かを追加する場合、/etc/ld.so.conf ファイルを変更する必要はありませんが、追加後に ldconfig を呼び出す必要があります。そうしないと、追加されたライブラリが見つからないだろう。

2. 追加したライブラリが /lib および /usr/lib にない場合は、/etc/ld.so.conf ファイルを変更し、ライブラリのパスをファイルに追加してから、 ldconfig コマンドを実行します。または、/etc/ld.so.conf.d/ の下に *.conf ファイルを追加し、ライブラリ パスを追加して、ldconfig を実行します。たとえば、MySQL をインストールする場合、そのライブラリ ファイル /usr/local/mysql/lib を /etc/ld.so.conf ファイルに追加する必要があります。コマンドは次のとおりです:

# echo "/usr/local/mysql/lib" >>/etc/ld.so.conf
# ldconfig -v | grep mysql

キャッシュ ファイルに保存されているすべての共有ライブラリを表示

# ldconfig -p

3. 追加されたライブラリが /lib または /usr/lib の下になく、権限がない場合/etc/ を書き込む ld.so.conf ファイルについては、LD_LIBRARY_PATH環境変更にパスを入れるだけです。

コマンド export を使用すると、一時的に有効になります

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

上記のメソッドは、変数 LD_LIBRARY_PATH を一時的に設定するだけです。この変数は無効になります次回コンピュータの電源を入れたときに、この値を LD_LIBRARY_PATH に継続的に書き込むのはどうですか?

エクスポート ステートメントは、~/.bashrc または ~/.bash_profile に追加できます。前者は、ログインするたびに、または開くたびに 1 回読み取られます。後者はログイン時に 1 回だけ読み取られます。私の習慣は、これを ~/.bashrc に追加することです。ファイルの最後に、次のステートメントを使用して設定を有効にできます:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

上記は です。 bash 環境変数を構成する形式 csh は異なります:

setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${my_HOME}/lib

変更後、上記の構成を有効にするために、現在のターミナルを閉じて新しいターミナルを再度開くことを忘れないでください。

推奨される学習: 「Linux ビデオ チュートリアル

以上がLinux ldconfigとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。