gccでのrpathの指定
-Wl,-rpath,'${path}'
-Wl,
に続いてリンカに渡すオプションを指定する-rpath
オプションでディレクトリを指定する
リンク先のライブラリの解決順序
- 実行バイナリのDynamic sectionの
DT_RPATH
(非推奨)DT_RUNPATH
が存在しない場合
- 環境変数
LD_LIBRARY_PATH
- 実行バイナリのDynamic sectionの
DT_RUNPATH
/etc/ld.so.cache
/lib
,/usr/lib
実行バイナリのDynamic sectionの確認
$ readelf -d ./a.out
動的リンクされた共有ライブラリの確認
$ ldd ./a.out
参考