[openrtm-users 02761] Re: 外部ライブラリを使うときのCMakeLists.txtの修正について

Geoffrey Biggs geoffrey.biggs @ aist.go.jp
2013年 2月 26日 (火) 15:28:57 JST


原様、

産総研のジェフです。

理想の方法は、find_package()を使ってパッケージ情報を獲得します。この方法が使えるように使いたいライブラリーが以下のファイルを提供するべきです。

<ライブラリー名>-config.cmake
<ライブラリー名>-config-version.cmake

おそらく原様が使いたいライブラリーはこのファイルを提供しません。

第2方法はpkgconfigを使うことです。使いたいライブラリーは .pc
ファイルを提供する場合、ルートのCMakeLists.txtに以下の行を追加すると使えます。

find_package(PkgConfig)
pkg_check_modules(<PREFIX> REQUIRED <MODULE>)

pkgconfigも使えない場合は、find_library()とfind_file()
が使えます。ルートのCMakeLists.txtに使って、使いたいライブラリーのパスやヘダーのパスを見つけて、include_directories()とlink_directories()に指定します。

それもダメでしたら、手動しかありません。CMakeLists.txtにオプションを追加して、ccmakeでそれを設定することです。


2013/2/26 Isao Hara <isao-hara @ aist.go.jp>

> 皆様:
>
> 原@産総研です。
> OpenRTPが公開されましたは、このビルダで生成したひな形のCMakeLists.txtに
> 関して
> 外部ライブラリを使ったRTCを作成するときには、どこを修正するのが正しい
> のでしょうか?
>
> 私の場合、srcの下のCMakeLists.txtで
>
> include_directories("include/HunoLib")
> link_directories("../../lib")
> target_link_libraries(${PROJECT_NAME} "HUNO_lib.lib")
> target_link_libraries(${PROJECT_NAME}Comp "HUNO_lib.lib")
>
> などとしています。
> link_directories などは、相対パス記述だと build/src がカレントディレク
> トリに
> なるので、ちょっと気持ち悪いなぁという感じです。
>
> こうすればOKというのがあれば、教えてください。
> RTCビルダ on the Webでのひな形にしたいと思っていますので。
>
> 以上、よろしくお願いいたします。
>
> --
> ---------
> 産業技術総合研究所  知能システム研究部門
> 統合知能研究グループ 主任研究員
> ソフトウェアプラットフォーム研究班 班長
>  原  功 <Isao-Hara @ aist.go.jp>
> Isao HARA, Senior Research Scientist, ISRI, AIST, Japan
> Phone: +81-29-861-5973
>
> _______________________________________________
> openrtm-users mailing list
> openrtm-users @ openrtm.org
> http://www.openrtm.org/mailman/listinfo/openrtm-users
>
-------------- next part --------------
HTML$B$NE:IU%U%!%$%k$rJ]4I$7$^$7$?(B...
URL: <http://www.openrtm.org/pipermail/openrtm-users/attachments/20130226/c169bf4e/attachment.html>


More information about the openrtm-users mailing list