OpenRTM / OpenRTP-aist

OpenRTP-aist: RT-Middleware and OMG RTC based component and system development tools implemented by AIST
Other
1 stars 6 forks source link

Python RTCをbuildするとエラーになる #498

Open n-ando opened 1 year ago

n-ando commented 1 year ago

Describe the bug RTCBuilderでPython RTCを生成し、cmake buildすると omniORBのconfig.cmakeを要求される。

To Reproduce

  1. OpenRTMのPython環境のみをインストールする
  2. RTCBuilderでPython RTCのコードを生成する
  3. 生成したプロジェクトで、mkdir build ; cd build ; cmake .. でエラー、omniORB4パッケージチェックに引っかかる
  4. apt install libomniorb4-dev すると、パッケージチェックは追加してcmake makeが通る

Reproducibility 100%

Expected behavior Python環境のみインストールしている状態でもcmakeは通ってほしい

Environment

n-kawauchi commented 9 months ago

Ubuntu22.04で、OpenRTM-Pythonのみをインストールしている環境での確認です。

$ dpkg -l | grep openrt
ii  openrtm2-python3                2.0.1-1   amd64    OpenRTM-aist, RT-Middleware distributed by AIST
ii  openrtm2-python3-doc            2.0.1-1   all      Documentation for openrtm2-python3
ii  openrtm2-python3-example        2.0.1-1   amd64    OpenRTM-aist-Python examples

RTCBでPython RTCを生成すると、CMakeLists.txtに「find_package(OpenRTM REQUIRED)」とあるため、OpenRTMConfig.cmakeが求められ、現状openrtm2-devのインストールは必要となります。依存関係で、openrtm2, openrtm2-idl もインストールされます。

OpenRTMConfig.cmakeから${OPENRTM_VERSION_MAJOR}${OPENRTM_VERSION_MINOR}${OPENRTM_VERSION_PATCH}等を取得して、これがdeb/rpmパッケージ生成時に定義するopenrtm2の依存関係でバージョン番号指定にも使われる予定との認識です。

n-ando commented 8 months ago

OpenRTMpyConfig.cmakeを新たに作成する方向で。

ga-sakamoto commented 7 months ago

こちらのお話につきましては,ツール側(OpenRTP側)ではなく,ミドルウェア本体に含まれるファイルを修正する,という事でしょうか?

n-kawauchi commented 7 months ago

OpenRTM-PythonへOpenRTMpyConfig.cmake新規定義が加わった後にOpenRTPのテンプレート修正をお願いする予定です。 現在、一番トップのCMakeLists.txtには、C++のOpenRTMConfig.cmakeからOpenRTMのバージョン番号を取得する処理が入っています。この部分を新たなOpenRTMpyConfig.cmakeを利用するように変更する予定です。

find_package(OpenRTM REQUIRED)
set(RTM_VER ${OPENRTM_VERSION})
set(RTM_SHORT_VER ${OPENRTM_VERSION_MAJOR}${OPENRTM_VERSION_MINOR}${OPENRTM_VERSION_PATCH})
ga-sakamoto commented 7 months ago

こちらもかしこまりました. ご連絡をお待ちしたいと思います.