#まず
今回記述するコマンドは
依存する側がどのファイルに依存しているのかを確認するのであって、
依存される側がどのファイルから依存されているかを判別するものではありません。
共有ライブラリ側から依存ファイルを確認する方法をご存じの方がいたら教えて下さい。。!
#どうすればわかるのか => $ ldd
$ ldd [オプション] [対象ファイル名]
ldd(エルディーディー)です。
又、ファイル名はフルパスで指定してください。
オプションは下記引用になります。
オプション | 説明 |
---|---|
-d | 「データ再配置を処理する」らしい |
--data-relocs | 「データ再配置を処理する」らしい |
-r | 「データと関数再配置を処理する」らしい |
--function-relocs | 「データと関数再配置を処理する」らしい |
-u | 使用されていない直接依存関係を表示する |
--unused | 使用されていない直接依存関係を表示する |
-v | 全ての情報を表示する |
--verbose | 全ての情報を表示する |
--help | ヘルプを表示する |
--version | バージョン情報を表示する |
#出力から依存関係を確認
▼参考:依存しているライブラリを調べるには
https://www.atmarkit.co.jp/flinux/rensai/linuxtips/134whatneedlib.html
下記引用例を見て確認
$ ldd /bin/ls ←調べるプログラムはフルパスで指定する
libtermcap.so.2 => /lib/libtermcap.so.2 (0x2aac6000)
libc.so.6 => /lib/libc.so.6 (0x2aaca000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x2aaab000)
この場合、 /bin/ls
と依存関係にあるファイルは
=> の先にある /lib/libtermcap.so.2
などになります。