Project

General

Profile

Actions

バグ #3977

closed

IDLファイルのコンパイルが実行されずインクルードファイルのエラーが発生する問題

Added by n.kawauchi over 7 years ago. Updated over 7 years ago.

Status:
終了
Priority:
通常
Assignee:
Start date:
03/07/2017
Due date:
% Done:

100%

Estimated time:

Description

  • Linux環境 + CMake3.7.2 で、サービスポート、独自データ型等でIDLファイルのコンパイルを必要とする場合に発生する
  • IDLコンパイルより前に実行ファイルのビルドを行おうとするためにインクルードファイルのエラーが発生するもの
  • RTC Builderで生成したsrc/CMakeLists.txt内で${PROJECT_NAME}Compの依存関係にALL_IDL_TGTが設定されていないことが原因
  • src/CMakeLists.txt へ add_dependencies(${PROJECT_NAME}Comp ALL_IDL_TGT) を追加すれば問題は解消した
  • ImageProcessingのImageCalibration(C++ RTC)では下記★を追加することで対応できた
    set_target_properties(${PROJECT_NAME} PROPERTIES PREFIX "")
    set_source_files_properties(${ALL_IDL_SRCS} PROPERTIES GENERATED 1)
    add_dependencies(${PROJECT_NAME} ALL_IDL_TGT)
    target_link_libraries(${PROJECT_NAME} ${OPENRTM_LIBRARIES} ${OpenCV_LIBS})
    
    add_executable(${PROJECT_NAME}Comp ${standalone_srcs}
      ${comp_srcs} ${comp_headers} ${ALL_IDL_SRCS})
    add_dependencies(${PROJECT_NAME}Comp ALL_IDL_TGT) ←★
    target_link_libraries(${PROJECT_NAME}Comp ${OPENRTM_LIBRARIES} ${OpenCV_LIBS})
    
Actions

Also available in: Atom PDF