ライブラリの仕組み
ライブラリ:
→静的ライブラリ:プログラムのコンパイル時にファイル内に組み込まれる。(lib~.aのような名前)
→共有ライブラリ:複数のプログラムで共有(lib~.so~のような名前)
ldd [ コマンド ]: 使用している共有ライブラリを確認
(例): ldd /bin/ls
/usr/lib/arm-linux-gnueabihf/libcofi_rpi.so (0xb6f8d000)
libselinux.so.1 => /lib/arm-linux-gnueabihf/libselinux.so.1 (0xb6f5c000)
librt.so.1 => /lib/arm-linux-gnueabihf/librt.so.1 (0xb6f4d000)
libacl.so.1 => /lib/arm-linux-gnueabihf/libacl.so.1 (0xb6f3e000)
libgcc_s.so.1 => /lib/arm-linux-gnueabihf/libgcc_s.so.1 (0xb6f16000)
libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0xb6de6000)
/lib/ld-linux-armhf.so.3 (0xb6f9a000)
共有ライブラリの検索順:
1. /etc/ld.so.cache(ld.so.confをldconfigした結果)
2. LD_LIBRARY_PATH
3. /lib/,/usr/lib