cmakeを使用してパッケージを作成しています
私は次の構造を持っています
bin/
bin1
lib/
lib1
lib2
ここで、lib1とlib2は外部ダイナミックライブラリです。lib1およびlib2と自動的にリンクするようにRPATHを設定するにはどうすればよいですか?
私もこれにcmakeをいじっています。Cmakeは、ビルド時にリンクするためにCMAKE_SKIP_BUILD_RPATHを使用し、インストールターゲットのビルド時に使用されるrpathを設定するためにCMAKE_INSTALL_RPATHを使用します。cmakeには、rpathメカニズムの使用に関するいくつかの良い情報があります: http ://www.cmake.org/Wiki/CMake_RPATH_handling
別の方法は、ldconfigを使用することです。svn(1.6.17)をビルドすると、makeinstalltargetがldconfigを呼び出してrpathを設定することに気付きました。
$ PWDではなく、バイナリを基準にして保持するためにrpathで必要になるため、$ORIGINを確認してください。
AFAIK、CMakeは、target_link_libraries()でリンクしているすべてのターゲットにrpathを自動的に追加します。
それをオフに切り替えるには、CMAKE_SKIP_RPATHオプションがあります。