Skip to content

TAOのSSLIOP、HTIOP、SHMIOP対応のための修正#1013

Draft
Nobu19800 wants to merge 19 commits intoOpenRTM:masterfrom
Nobu19800:feature/tao_install
Draft

TAOのSSLIOP、HTIOP、SHMIOP対応のための修正#1013
Nobu19800 wants to merge 19 commits intoOpenRTM:masterfrom
Nobu19800:feature/tao_install

Conversation

@Nobu19800
Copy link

@Nobu19800 Nobu19800 commented Jan 20, 2022

Identify the Bug

Description of the Change

TAOのSSLIOP、HTIOP、SHMIOP通信対応のために以下の修正を行った。

  • CMakeでのインストール時に各種設定ファイルの自動生成
    • SHMIOP用設定ファイル:rtc.shmiop.confsvc.conf
    • SSLIOP用設定ファイル:rtc.ssliop.confsvc.conf
    • HTIOP用設定ファイル:rtc.htiop.confsvc.confHT_Config.conf
  • SSLIOP対応のためのAccessDecisionオブジェクトの設定を追加。TAOのSSLIOP機能ではSSL通信以外でのCORBAオブジェクトへのアクセスを拒否する設定ができる。プロセス内部からのCORBAオブジェクトの操作もSSL通信ではないためデフォルトで拒否するようになっている。このため、AccessDecisionオブジェクトのdefault_collocated_decision関数でプロセス内部からの操作は許可するようにしている。

Verification

  • Did you succeed the build?
  • No warnings for the build?
  • Have you passed the unit tests?

@Nobu19800 Nobu19800 added the enhancement New feature or request label Jan 20, 2022
@Nobu19800 Nobu19800 requested a review from n-ando January 20, 2022 15:17
@Nobu19800 Nobu19800 self-assigned this Jan 20, 2022
n-ando
n-ando previously approved these changes Jan 24, 2022
@n-kawauchi n-kawauchi marked this pull request as ready for review August 30, 2024 09:06
Copy link

@n-kawauchi n-kawauchi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ubuntu24.04環境での確認で、ビルドエラーになります。
まずTAOのインストールですが、下記ドキュメントの手順(TAO7.0.6利用)に従うと下記エラーになったため、最新の8.0.1を使いました。
https://openrtm.org/openrtm/ja/node/7131#ubuntu

cd TAO
make
 :
../../tao/Any_Insert_Policy_T.h:42:14: error: ‘void CORBA::Any::operator<<=(unsigned char)’ is private within this context
   42 |         (*p) <<= x;
      |         ~~~~~^~~~~

OpenRTMのビルドは下記手順に従うとcmakeエラーになりました。
https://openrtm.org/openrtm/ja/doc/installation/install_2_0/cpp_2_0/build_2_0/openrtm_cpp_cmake_build#toc4

CMake Error at /usr/share/cmake-3.28/Modules/FindPkgConfig.cmake:619 (message):
  The following required packages were not found:

   - TAO_Svc_Utils

そこで、cmake直前にTAOインストール先のpkgconfigを指定したところcmakeは通りました。

export PKG_CONFIG_PATH=${ACE_INSTALL_DIR}/lib/pkgconfig:$PKG_CONFIG_PATH

しかしビルドエラーになります。

cmake --build . --config Release -- -j$(nproc)
  :
/home/vagrant/work/ace_install/include/tao/ParameterModeC.h:47:2: error: #error This file should be regenerated with TAO_IDL
   47 | #error This file should be regenerated with TAO_IDL
      |  ^~~~~
In file included from /home/vagrant/work/ace_install/include/tao/IOPC.h:58:
/home/vagrant/work/ace_install/include/tao/OctetSeqC.h:56:2: error: #error This file should be regenerated with TAO_IDL
   56 | #error This file should be regenerated with TAO_IDL
      |  ^~~~~
/home/vagrant/work/ace_install/include/tao/IOPC.h:61:2: error: #error This file should be regenerated with TAO_IDL
   61 | #error This file should be regenerated with TAO_IDL
      |  ^~~~~
  :以下、同様のエラーが続く

@n-kawauchi n-kawauchi marked this pull request as draft September 2, 2024 05:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants