3

dll-pathブーストをコンパイルするときにオプションを提供することで、コンパイルされたブースト ライブラリに完全な実行パスを持たせることを目指しています。

$ ./b2 dll-path=$(pwd)/build --prefix=$(pwd)/build
$ ./b2 install dll-path=$(pwd)/build --prefix=$(pwd)/build

ただし、$(pwd)/buildフォルダー内のライブラリをチェックすると、次のようになります。

$ otool -L build/lib/libboost_system.dylib 
build/lib/libboost_system.dylib:
    libboost_system.dylib (compatibility version 0.0.0, current version 0.0.0)
    /usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 120.0.0)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1213.0.0)

つまり、lib 名のフル パスの代わりに、lib 名 (libboost_system.dylib) だけがあります。オプションをどのように使用する必要がありますか、またはこれを達成するための「公式」の方法はありますか (各ライブラリdll-pathで手動で実行するスクリプトを使用する以外に)?install_name_tool

4

1 に答える 1