
-CentOS- | -Ubuntu-
共有ライブラリへのパス指定
共有ライブラリは、/lib/や/usr/lib/ディレクトリに配置される。それ以外のディレクトリに配置したいときは以下のように設定を行う。
- /etc/ld.so.confにディレクトリパスを記述し、ldconfigコマンドを実行する。
- 環境変数LD_LIBRARY_PATHにディレクトリパスを追加する。
/etc/ld.so.confにディレクトリパスを記述したら、ldconfigコマンドを実行する必要がある。プログラムが実際に参照するのは、/etc/ld.so.confではなく、/etc/ld.so.cacheになる。ldconfigコマンドを実行すると、/etc/ld.so.confの内容に基づいて、/etc/ld.so.cache経バイナリで書き出す。
ld.co.confとld.so.cache
ディレクトリパスの確認(CentOS)
ld.so.confを確認する
user@computer$ cat /etc/ld.so.conf
include /etc/ld.so.conf.d/*.conf
/etc/ld.so.conf.d/ディレクトリに格納されたファイルにライブラリパスが書いてあると表示される。
/etc/ld.so.conf.d/を確認する
user@computer$ ls /etc/ld.so.conf.d/
bind-export-x86_64.conf
dyninst-x86_64.conf
kernel-3.10.0-1127.10.1.el7.x86_64.conf
.
.
.
ファイルの内容を確認する
user@computer$ cat /etc/ld.so.conf.d/bind-export-x86_64.conf
/usr/lib64//bind9-export/ ライブラリパス
ディレクトリパスの確認(Ubuntu)
ld.so.confを確認する
user@computer$ cat /etc/ld.so.conf
include /etc/ld.so.conf.d/*.conf
/etc/ld.so.conf.d/ディレクトリに格納されたファイルにライブラリパスが書いてあると表示される。
/etc/ld.so.conf.d/を確認する
user@computer$ ls /etc/ld.so.conf.d/ | sort
libc.conf
x86_64-linux-gnu.conf
zz_i386-biarch-compat.conf
ファイルの内容を確認する
user@computer$ cat /etc/ld.so.conf.d/libc.conf
# libc default configuration
/usr/local/lib ライブラリパス
共有ライブラリのキャッシュを生成・更新する
「ldconfig」コマンド
書式 |
---|
ldconfig [オプション] [ディレクトリ] |
主なオプション名 | 説明 |
---|---|
-p | 現在のキャッシュを表示する。 |
-f ファイル名 | /etc/ld.so.confの代わりに設定ファイルを指定する。 |
-c ファイル名 | /etc/ls.so.cacheの代わりにキャッシュファイルを指定する。 |
ディレクトリ | 共有ライブラリを検索するディレクトリ |
参照元情報