lddコマンドついて
概要
- linuxのバイナリで動的リンクされているライブラリ(dynamic lib)を確認できるコマンド
ユースケース
- 自作のバイナリがきちんとリンクされているか確認
- たまに不整合を起こして起動できなくなるバイナリのデバック(libcのアップグレードなど)
使用例
vimはどのライブラリを使用しているか確認
$ ldd `which vim`
linux-vdso.so.1 (0x00007fff8a939000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f6072659000)
libtinfo.so.6 => /lib/x86_64-linux-gnu/libtinfo.so.6 (0x00007f607262a000)
...
システムが読み込む動的リンクのパスの追加
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:<user defined path>
システムに動的リンク一覧を登録し直す
# ldconfig