Project

General

Profile

整備 #4571

Windows用OpenRTMConfig.cmakeへrtmCamera, rtmManipulator用変数を追加する

Added by n.kawauchi about 3 years ago. Updated about 3 years ago.

Status:
解決
Priority:
通常
Assignee:
Start date:
07/23/2018
Due date:
% Done:

100%

Estimated time:

Description

  • 下記変数を新たに定義する
     RTM_CAMERA_INCLUDE_DIR: rtmCamera include dir
     RTM_CAMERA_LIB_DIR: rtmCamera's lib directory
     RTM_CAMERA_LIBRARIES: rtmCamera libraries
     RTM_MANIPULATOR_INCLUDE_DIR: rtmManipulator include dir
     RTM_MANIPULATOR_LIB_DIR: rtmManipulator's lib directory
     RTM_MANIPULATOR_LIBRARIES: rtmManipulator libraries
    
  • また、サフィックス(バージョン番号、VCバージョン等)も変数で定義されるようにテンプレートを修正する
  • OpenRTM-aist 1.2.0版で、VCバージョンがVC2013の場合、omniORB4.2.2の場合、生成されるOpenRTMConfig.cmakeには下記が追加されるようにする
    set(RTM_DLLVER 120_vc12)
    set(COIL_DLLVER 120_vc12)
    set(OMNI_DLLVER 422)
    set(OMNITHREAD_DLLVER 40)
    

History

#1 Updated by n.kawauchi about 3 years ago

  • Status changed from 新規 to 解決
  • % Done changed from 0 to 100
  • r3396にてOpenRTMConfig.cmakeを生成するcmakeconfgen.pyスクリプトと、このスクリプトの引数として渡すrtm_config.vspropsの対応完了。
    しかし、この修正にてvc2008のみビルドが通らなくなる。
  • r3397にてvc2008のビルド不具合の対応完了
    • 不具合詳細
      • 「'coil${COIL_DLLVER}.lib' を開けません」というビルドエラー、他
      • rtm_config.vspropsがvcprojファイルのプロパティシートとして利用された場合に発生した。
        これに該当するのはvc2008のみで、vc2010以降はvcxprojファイルでrtm_config.propsを利用しているため影響がなかった。
    • 対応方針
      • 今回の修正で、OpenRTMConfig.cmakeの中でバージョン番号が直書きになっていたものを変数で置き換えている。
        本チケット説明で記載したように、COIL_DLLVERの変数はcmake実行時に展開されればよいとの考えで、OpenRTMConfig.cmakeの最初に
        「set(COIL_DLLVER 120_vc12)」のように定義されるようにした。
      • OpenRTM-aistでのvc2008サポートはバージョン1.2までとなる見込みなので、rtm_config.vspropsへvc2008の対応のためだけの
        設定は加えない方がよいと判断した
      • 今回の修正を加える前のrtm_config.vspropsならば、vc2008のビルドが通る。そこでこの内容を新たな設定ファイル
        rtm_config_vc9.vspropsとして用意した。
      • vc2008の場合、OpenRTMConfig.cmakeを生成する場合はrtm_config.vspropsを使用するが、vcprojファイルを生成する場合は
        rtm_config_vc9.vspropsを読み込むようにすることで不具合が改善した。
      • 修正対象は、vcprojtool.py、各yamlファイル

Also available in: Atom PDF