半空洞男女関係

思ったこととかプログラミングしてるときのメモとか色々かいてます。メールはidそのままgmail

install_name_toolの使い方

dylibの依存関係をどーにかするために、dyilbはどこと依存してますよーというデータを自分自身で持っているみたいだ。
その関係はディレクトリを指定してあげなければいけないのだけれど、それがちゃんとしたディレクトリに置かれていないとうまく動作してくれない。その依存関係の調節をするのに「install_name_tool」というコマンドをつかう。


また、依存関係を確認するのには「otool」というコマンドをつかう。
otoolでよく使うオプションには2つあって、-Lと-Dがある。-Lはバイナリとライブラリに使えて、-Dはライブラリにしか使えない。
-Lを使うと、そのファイルが使う共有ライブラリの名前とバージョンを表示する。
-Dを使うと、共有ライブラリのインストールされた名前だけを表示する。


otoolで確認した「-D」で表示される部分を変えるには、こうする。

install_name_tool -id 新しく指定したいディレクトリ dylibの名前

otoolで確認した「-L」で表示される部分を変えるには、こうする。

install_name_tool -change 変更したいディレクトリ そこに新しく書き込みたいディレクトリ オブジェクトファイルの名前


-Lで確認する方は、いろいろ指定ができるから、どことどこを変えるのかを指定してやらなきゃならない。でも、-Dで確認するのはインストールされた場所で、ひとつしかないから、どこと変えるのかとかは指定しなくてもいい。