- 共有ライブラリディレクトリ
- 実行に必要な共有ライブラリの確認
- 検索リスト
- キャッシュ
- ldconfig
- 検索ディレクトリの追加
●共有ライブラリディレクトリ
/lib, /usr/lib
この中に libxxx.so.y y : version?(数字)
例) libacl.so.1
●実行に必要な共有ライブラリの確認
ldd コマンドパス
例) ldd /bin/ls
実行結果
linux-gate.so.1 => (0x0053a000)
libselinux.so.1 => /lib/libselinux.so.1 (0x00672000)
librt.so.1 => /lib/librt.so.1 (0x00549000)
libacl.so.1 => /lib/libacl.so.1 (0x00bcb000)
libc.so.6 => /lib/libc.so.6 (0x00110000)
libdl.so.2 => /lib/libdl.so.2 (0x00876000)
/lib/ld-linux.so.2 (0x007d4000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00efc000)
libattr.so.1 => /lib/libattr.so.1 (0x00ca3000)
ライブラリ名と, その位置が表示される
●ライブラリの検索リスト
/etc/ld.so.conf
Ubuntu では, ld.so.conf.d というところの.confを読むといった階層をとっている
include /etc/ld.so.conf.d/*.conf # ls.so.conf.d の中の .conf ファイルを読み込んで探す
●キャッシュ
ライブラリの検索リストは, 実際には /etc/ld.so.cache
というキャッシュファイルを利用している
cat /etc/ld.so.cache で表示させてみたら全然読めず
●ldconfig - キャッシュの更新
/etc/ld.so.conf ファイルに基づいて, /etc/ld.so.cacheを更新
共有ライブラリの変更時
検索対象変更時
に活用
0 件のコメント:
コメントを投稿