以下から OpenRTM-aist のソースコードを入手してください。
以下からビルド済みの omniORB を入手してください。
チェックアウトしたフォルダー(OpenRTM-aist)に移動して以下のコマンドを実行してください。
mkdir build cd build cmake -DORB_ROOT=C:/workspace/omniORB-4.2.3-win64-vc141 -G "Visual Studio 16 2019" -DCMAKE_INSTALL_PREFIX=C:/workspace/openrtminstall .. cmake --build . --config Release cmake --build . --config Release --target install
変数名 | 意味 | 設定できる値 |
CORBA | CORBA のライブラリー | omniORB |
以下から OpenRTM-aist のソースコードを入手してください。
以下の手順でTAOをビルドします。
チェックアウトしたフォルダー(OpenRTM-aist)に移動して以下のコマンドを実行してください。
mkdir build cd build cmake -DORB_ROOT=C:/workspace/ACE_wrappers -DCORBA=TAO -G "Visual Studio 16 2019" -DCMAKE_INSTALL_PREFIX=C:/workspace/openrtminstall .. set PATH=%PATH%;C:\workspace\ACE_wrappers\lib; cmake --build . --config Release cmake --build . --config Release --target install
omniORBのWindows 10 IoT用のビルド済みバイナリファイルは現在のところ配布していないため、自力でビルドする必要があります。 Cygwinのインストールが必要です。
omniORBのソースコードを入手してください。
omniORB-4.2.2.tar.bz2を適当な場所に展開してください。
最初にARM+Windows用の修正パッチを適用します。 以下から修正パッチを入手してください。
Cygwin上で以下のコマンドを実行してください。
patch -p1 -d omniORB-4.2.2 < omniORB-4.2.2-windows-iot.patch
omniORB-4.2.2.tar.bz2を展開したフォルダのmk/platforms/arm_win32_vs_14.mkを編集します。 使用するVisual Studioのバージョンが違う場合は合ったものを選択してください。 以下のようにPythonのディレクトリを指定します。
PYTHON = /cygdrive/c/Python27/python
次にconfig/config.mkを編集します。 以下のように対応したmkファイルを指定します。 Visual Studioのバージョンが違う場合は適宜対応してください。
platform = arm_win32_vs_14
クロスコンパイルを行うため、idlコンパイラなどの実行ファイルは開発環境で動作可能なものを用意します。
以下からx86用にビルドした omniORB のバイナリを入手してください。
zipファイルを展開したフォルダのbin/x86_win32の中身を、omniORB-4.2.2.tar.bz2を展開したフォルダのbin/x86_win32にコピーしてください。
omniORB-4.2.2.tar.bz2を展開したディレクトリに移動して、以下のコマンドを実行してください。
set PATH=C:\cygwin64\bin;%PATH%; call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_arm cd src make export
これでbin/ARM_win32に実行ファイルが、lib/ARM_win32にライブラリが生成されます。 vcvarsall.batについてはVisual Studioのバージョンにあったものを使用してください。 Visual Studio 2017の場合はC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.batとなります。
OpenRTM-aistのビルドは通常とほとんど同じです。 cmakeのオプションとしてVisual Studio 14 2015 ARMというようにARM用のコンパイラを指定してください。
mkdir build cd build cmake -DORB_ROOT=C:/workspace/omniORB-4.2.2 -G "Visual Studio 14 2015" -A ARM -DCMAKE_INSTALL_PREFIX=C:/workspace/openrtminstall .. cmake --build . --config Release cmake --build . --config Release --target install
Visual StudioにARM用コンパイラがインストールされていないとビルドできません。 ARM用コンパイラをインストールしていない場合は、Visual Studio Installerを起動してARM用Visual Studio C++コンパイラとライブラリ'をインストールしてください。
sudo apt install libomniorb4-dev omniidl omniorb-nameserver git clone https://github.com/OpenRTM/OpenRTM-aist cd OpenRTM-aist/ mkdir build cd build/ cmake -DCMAKE_BUILD_TYPE=Release .. cmake --build . --config Release -- -j$(nproc) sudo cmake --build . --config Release --target install
変数名 | 意味 | 設定できる値 |
CORBA | CORBA のライブラリー | omniORB |
以下の手順でTAOをビルドします。
以下のコマンドでOpenRTM-aistをビルドしてください。
git clone https://github.com/OpenRTM/OpenRTM-aist cd OpenRTM-aist/ mkdir build cd build cmake -DCORBA=TAO -DCMAKE_BUILD_TYPE=Release .. cmake --build . --config Release -- -j$(nproc) sudo cmake --build . --config Release --target install
事前にWind River Workbenchのホームディレクトリを指定する必要があります。 Wind River WorkbenchをインストールしたディレクトリをWIND_HOMEという変数に設定してください。
export WIND_HOME=/home/openrtm/WindRiver
OpenRTM-aistのビルドの前に、omniORBのビルドを行う必要があります。
omniORBのソースコードを入手してください。
omniORBのVxWorks対応パッチを入手してください。
以下のコマンドでビルドを実行します。
wget https://jaist.dl.sourceforge.net/project/omniorb/omniORB/omniORB-4.2.2/omniORB-4.2.2.tar.bz2 tar xf omniORB-4.2.2.tar.bz2 wget http://svn.openrtm.org/omniORB/trunk/vxworks/omniORB-4.2.2-vxworks.patch patch -p1 -d omniORB-4.2.2 < omniORB-4.2.2-vxworks.patch cd omniORB-4.2.2 mkdir build cd build ../configure make cd .. sed -i '1s/^/platform = ${VXWORKS_PLATFORM}\n/' config/config.mk cd src make export
ただし、VXWORKS_PLATFORMには動作環境に合ったものを入力するようにしてください。
VXWORKS_PLATFORM | CPU | VxWorksのバージョン | 実装方法 |
powerpc_vxWorks_kernel_6.6 | PowerPC | 6.6 | カーネルモジュール |
powerpc_vxWorks_RTP_6.6 | PowerPC | 6.6 | RTP |
powerpc_vxWorks_kernel_6.9 | PowerPC | 6.9 | カーネルモジュール |
powerpc_vxWorks_RTP_6.9 | PowerPC | 6.9 | RTP |
simlinux_vxWorks_kernel_6.6 | Linux上のシミュレータ | 6.6 | カーネルモジュール |
simpentium_vxWorks_RTP_6.6 | Linux上のシミュレータ | 6.6 | RTP |
simlinux_vxWorks_kernel_6.9 | Linux上のシミュレータ | 6.9 | カーネルモジュール |
simpentium_vxWorks_RTP_6.9 | Linux上のシミュレータ | 6.9 | RTP |
以下のコマンドを入力してください。
git clone https://github.com/OpenRTM/OpenRTM-aist cd OpenRTM-aist/ mkdir build cd build/ cmake -DCMAKE_TOOLCHAIN_FILE=${TOOLCHAIN_FILE} -DVX_VERSION=${VX_VERSION} -DORB_ROOT=${ORB_ROOT} -DOMNI_VERSION=42 -DCORBA=omniORB -DVX_CPU_FAMILY=${ARCH} .. make
ただし、TOOLCHAIN_FILE、VX_VERSION 、ORB_ROOT、ARCHには以下の設定をしてください。
TOOLCHAIN_FILE | VxWorks 6.6(カーネルモジュール、PowerPC)の場合は../Toolchain-vxworks6.6-Linux.cmake、それ以外の場合は../Toolchain-vxworks6.cmake |
VX_VERSION | vxworks-6.6かvxworks-6.9 |
ORB_ROOT | omniORBのディレクトリ(例:/home/openrtm/omniORB-4.2.2) |
VX_CPU_FAMILY | ppc(PowerPC)、simlinux(カーネルモジュール、シミュレータ)、simpentium(RTP、シミュレータ) |
RTPの場合はcmakeコマンドに-DRTP=ONを追加する必要があります。
cmake -DCMAKE_TOOLCHAIN_FILE=${TOOLCHAIN_FILE} -DVX_VERSION=${VX_VERSION} -DORB_ROOT=${ORB_ROOT} -DOMNI_VERSION=42 -DCORBA=omniORB -DVX_CPU_FAMILY=${ARCH} -DRTP=ON .. cmake --build . --config Release
※現在のところ対応環境はVxWorks 6.6、PowerPCのみです。
以下のコマンドを入力してください。
git clone https://github.com/OpenRTM/OpenRTM-aist cd OpenRTM-aist/ mkdir build cd build/ cmake -DCMAKE_TOOLCHAIN_FILE=${TOOLCHAIN_FILE} -DORB_ROOT=${ORB_ROOT} -DCORBA=ORBexpress .. make
TOOLCHAIN_FILE、ORB_ROOTには以下の設定をしてください。
TOOLCHAIN_FILE | カーネルモジュールの場合は../Toolchain-vxworks6.6-Linux.cmake、RTPの場合は../Toolchain-vxworks6.cmake |
ORB_ROOT | ORBexpressのディレクトリ(例:/home/openrtm/OIS/ORBexpress/RT_2.8.4_PATCH_KC1) |
VMWare上のQNX 6.5でビルドします。 以下のページからISOイメージを入手してください。
まずはパッケージ管理システムpkgsrcをインストールします。 以下のコマンドでソースコードを入手してください。
svn checkout --username ユーザ名 --password パスワード http://community.qnx.com/svn/repos/pkgsrc/HEAD_650/pkgsrc
ユーザー名、パスワードはQNXのアカウントのメールアドレス、パスワードを設定してください。
次に以下のコマンドでインストールします。 コマンドはsuで実行してください。
(cd pkgsrc/bootstrap && ./bootstrap) (cd pkgsrc/misc/figlet && ../../bootstrap/work/bin/bmake install)
環境変数PKG_PATHを設定しておいてください。
export PKG_PATH=ftp://ftp.netbsd.org/pub/pkgsrc/packages/QNX/i386/6.5.0_head_20110826/All/
まずはlibuuidのビルドをします。 libuuid-1.0.3.tar.gzをダウンロードしてQNXに転送してください。
ファイルを展開してください。
tar xf libuuid-1.0.3.tar.gz
libuuidのビルドにはsys/syscall.h、bits/syscall.h、asm/unistd.h、asm/unistd_32.h(もしくはasm/unistd_64.h)が必要になります。 ファイルを入手してlibuuid-1.0.3の下にコピーしてください。
libuuid-1.0.3 |-sys | |-syscall.h |-bits | |-syscall.h |-asm | |-unistd.h | |-unistd_32.h(もしくはunistd_64.h) |-(省略)
以下のコマンドでビルド、インストールしてください。
cd libuuid-1.0.3 ./configure make make install cd ..
まずはomniORB-4.2.3.tar.bz2を入手してQNXに転送してください。
ファイルを展開してください。
tar xf omniORB-4.2.3.tar.bz2
以下のファイルについて変更が必要です。
まずconfigureについては2箇所の変更が必要です。 以下の*-*-nto-qnx)の行を追加してください。
case "$host" in *-*-linux-*) plat_name="Linux"; plat_def="__linux__"; os_v="2";; *-*-nto-qnx) plat_name="Linux"; plat_def="__linux__"; os_v="2";;
以下のx86-pc-*)の部分を追加してください。
case "$host" in i?86-*) proc_name="x86Processor"; proc_def="__x86__";; x86-pc-*) proc_name="x86Processor"; proc_def="__x86__";;
mk/beforeauto.mk.inは以下の部分を変更してください。
#OMNITHREAD_LIB += -lpthread #削除 OMNITHREAD_LIB += -lsocket #追加
以下のコマンドでビルドします。
./configure make make install cd ..
OpenRTM-aistのビルドにはcmake、pkg-config、Python 2.7が必要です。
/usr/pkg/sbin/pkg_add -v pkg-config-0.25nb1 /usr/pkg/sbin/pkg_add -v cmake-2.8.5 /usr/pkg/sbin/pkg_add -v python27-2.7.2
環境変数PKG_CONFIG_PATHを設定してください。
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/
OpenRTM-aistのソースコードを入手してQNXに転送してください。
OpenRTM-aistのディレクトリに移動して以下のコマンドを実行します。
mkdir build cd build/ ln -s /usr/pkg/bin/python2.7 ./python export PATH=$PWD:$PATH cmake -DCORBA=omniORB .. cmake --build . --config Release -- -j$(nproc) cmake --build . --target install
Ubuntu上にQNX Software Development Platform 7.0をインストールしてビルドします。 まずはQNX Software Centerをインストールしてください。
sudo apt-get install libgtk2.0-0:i386 chmod a+x qnx-setup-201808201144-lin.run ./qnx-setup-201808201144-lin.run
QNX Software Centerを起動してAdd InstallationからQNX Software Development Platformをインストールしてください。
/home/openrtm/qnx/qnxsoftwarecenter/qnxsoftwarecenter
まずはlibuuidのビルドをします。
wget https://jaist.dl.sourceforge.net/project/libuuid/libuuid-1.0.3.tar.gz tar xf libuuid-1.0.3.tar.gz
libuuidのビルドにはsys/syscall.h、bits/syscall.h、asm/unistd.h、asm/unistd_32.h(もしくはasm/unistd_64.h)が必要になります。 ファイルを入手してlibuuid-1.0.3の下にコピーしてください。
cd libuuid-1.0.3 mkdir sys cp /usr/include/x86_64-linux-gnu/sys/syscall.h sys mkdir asm cp /usr/include/x86_64-linux-gnu/asm/unistd.h asm cp /usr/include/x86_64-linux-gnu/asm/unistd_64.h asm mkdir bits cp /usr/include/x86_64-linux-gnu/bits/syscall.h bits
QNXクロスコンパイル環境設定のためにスクリプトを実行します。
source ~/qnx700/qnxsdp-env.sh
以下のコマンドでビルドします。 qnx700のパスは適宜変更してください。
./configure --prefix=/home/openrtm/qnx700/target/qnx7/usr/ CC="qcc -V5.4.0,gcc_ntox86_64_gpp" CXX="q++ -V5.4.0,gcc_ntox86_64_gpp" AR=ntox86_64-ar RANLIB=ntox86_64-ranlib --host=x86_64-unknown-linux-gnu make make install cd ..
まずはomniORBのソースコードを入手してください。
wget https://jaist.dl.sourceforge.net/project/omniorb/omniORB/omniORB-4.2.3/omniORB-4.2.3.tar.bz2 tar xf omniORB-4.2.3.tar.bz2 cd omniORB-4.2.3
Ubuntu上でomniidlをビルドする必要があります。 qnxsdp-env.shを実行していない環境でomniORBのビルドを行いインストールしてください。
./configure make make install
QNXでビルドするために
#OMNITHREAD_LIB += -lpthread OMNITHREAD_LIB += -lsocket
以下のコマンドでビルドしてください。
make clean ./configure --prefix=/home/openrtm/qnx700/target/qnx7/usr/ CC="qcc -V5.4.0,gcc_ntox86_64_gpp" CXX="q++ -V5.4.0,gcc_ntox86_64_gpp" AR=ntox86_64-ar RANLIB=ntox86_64-ranlib --host=x86_64-unknown-linux-gnu make make install
omniORB、uuidをpkg-configで検出するために環境変数PKG_CONFIG_PATHを設定してください。
export PKG_CONFIG_PATH=/home/openrtm/qnx700/target/qnx7/usr/lib/pkgconfig
以下のコマンドでビルドします。
git clone https://github.com/OpenRTM/OpenRTM-aist cd OpenRTM-aist/ mkdir build cd build cmake -DCORBA=omniORB -DCMAKE_TOOLCHAIN_FILE=../Toolchain-QNX7.cmake -DCMAKE_INSTALL_PREFIX=/home/openrtm/qnx700/target/qnx7/usr/ .. cmake --build . --config Release -- -j$(nproc)
VMWare用のイメージを入手するためには、QNX Software Centerでファイルをダウンロードします。
QNX Software Development Platform->Reference Images->QNX SDP 7.0 x86-64 virtual machine for VMWareをインストールしてください。
インストールしたQNX_SDP.vmxをVMwareで開くと仮想マシンが起動します。
名前 | 説明 | デフォルト |
CORBA | 利用するCORBAのライブラリの種類(omniORB、TAO、ORBexpress) | omniORB |
ORB_ROOT | CORBAのライブラリをインストールした場所 | 設定しない場合、Ubuntu、omniORBの場合はFindPkgConfigで検索。それ以外はエラー |
SSL_ENABLE | SSLによるセキュアな通信を有効にするためのプラグインを生成するか ON:生成する OFF:生成しない |
OFF |
HTTP_ENABLE | HTTP通信を有効にするためのプラグインを生成するか ON:生成する OFF:生成しない |
OFF |
OPENSSL_ROOT | OpenSSLの各種ファイルを配置したディレクトリ。Windowsの場合は必須 | |
OBSERVER_ENABLE | コンポーネントオブザーバーを有効にするかどうか ON:有効 OFF:無効 |
OFF |
DOCUMENTS_ENABLE | Doxygenでドキュメントを生成するかどうか ON:生成する OFF:生成しない |
OFF |
ROS_ENABLE | ROS通信用シリアライザ、インターフェースを生成するか ON:生成する OFF:生成しない |
OFF |
FASTRTPS_ENABLE | DDS(Fast-RTPS)通信用インターフェースを生成するか ON:生成する OFF:生成しない |
OFF |
ROS2_ENABLE | ROS2通信用シリアライザを生成するか ON:生成する OFF:生成しない |
OFF |
EXAMPLES_ENABLE | サンプルコンポーネントを生成するかどうか ON:生成する OFF:生成しない |
ON |
UTILS_ENABLE | サンプルコンポーネントを生成するかどうか ON:生成する OFF:生成しない |
ON |
EXTLIB_ENABLE | サンプルコンポーネントを生成するかどうか ON:生成する OFF:生成しない |
ON |
FLUENTBIT_ENABLE | Fluent Bitロガープラグインを生成するかどうか ON:生成する OFF:生成しない |
OFF |
FLUENTBIT_ROOT | Fluent Bitのソースコードのディレクトリ | |
OPENSPLICE_ENABLE | DDS(OpenSplice)通信用インターフェースを生成するか ON:生成する OFF:生成しない |
OFF |
OPENSPLICE_DIR | OpenSpliceをインストールしたディレクトリ | |
RAPIDXML_DIR | rapidxmlを展開したディレクトリ |
名前 | 説明 | デフォルト |
OMNI_VERSION | omniORBのメジャーバージョン。omniORBを手動でビルド、任意の場所にインストールした場合は必須 | 設定しなかった場合、LinuxでomniORBがpkg-configでインストールした場合は自動的に設定する。それ以外はエラー |
OMNI_MINOR | omniORBのマイナーバージョン。omniORBを手動でビルド、任意の場所にインストールした場合は必須 | 同上 |
OMNITHREAD_VERSION | omniThreadのバージョン。omniORBを手動でビルド、任意の場所にインストールした場合は必須 | 同上 |
依存はlibcoil、libRTCのみ。
EXTLIB_ENABLEがONになっている必要がある。
FASTRTPS_ENABLEがONになっている必要があるため、FastRTPSTransportのビルドは必須。
ビルドにはPython、Cygwinのインストールが必要です。
sslTp、httpTp機能を使う場合はOpenSSLのビルドが必要です。
Strawberry Perlをインストールして以下のコマンドを実行する。
set OPENSSL_INSTALL_DIR=C:/work/openssl_install call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64 perl Configure VC-WIN64A --prefix=%OPENSSL_INSTALL_DIR% no-asm shared nmake install
omniORBのソースコードを入手します。
mk/platforms/x86_win32_vs_16.mkでPython、OpenSSLのパスを設定します。OPEN_SSL_ROOTを設定しなかった場合でもビルドは可能ですが、sslTp、httpTp機能は使えません。
PYTHON = /cygdrive/c/Python310/python
OPEN_SSL_ROOT = /cygdrive/c/work/openssl_install
config/config.mkでビルドする環境を指定してください。
platform = x86_win32_vs_16
omniORBを展開したフォルダに移動して以下のコマンドを実行してください。
set PATH=C:\cygwin64\bin;%PATH%; call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64 cd src make export
次にomniORBpyのビルドを実行します。 まずomniORBpyのソースコードを入手してください。
omniORBpyをomniORBのsrc/lib以下にコピーします。
omniORB-4.x.y |--src | |--lib | |--omniORBpy |--mk | |--platforms | |--x86_win32_vs_16 |--config |--config.mk
omniORBpyフォルダに移動してmakeコマンドを実行します。
cd lib\omniORBpy make export
omniORB、omniORBpyの動作確認をするためには環境変数PATH、PYTHONPATHの設定が必要です。
set omniORB_DIR=C:/workspace/omniORB-4.3.0 set PATH=%omniORB_DIR%\bin\x86_win32;%PATH% set PYTHONPATH=%omniORB_DIR%\lib\x86_win32;%omniORB_DIR%\lib\python;%PYTHONPATH%
sslTp、httpTp機能を使う場合はOpenSSLのインストールが必要です。
sudo apt install libssl-dev
次にomniORBのソースコードを入手してビルドします。
export PYTHON=/usr/bin/python3 export OMNIORB_INSTALL_DIR=~/work/omniorb_install wget https://jaist.dl.sourceforge.net/project/omniorb/omniORB/omniORB-4.3.0/omniORB-4.3.0.tar.bz2 tar xf omniORB-4.3.0.tar.bz2 cd omniORB-4.3.0 ./configure --prefix=${OMNIORB_INSTALL_DIR} --with-openssl make make install
omniORBpyのビルドを実行します。
export PYTHON=/usr/bin/python3 wget https://jaist.dl.sourceforge.net/project/omniorb/omniORBpy/omniORBpy-4.3.0/omniORBpy-4.3.0.tar.bz2 tar xf omniORBpy-4.3.0.tar.bz2 cd omniORBpy-4.3.0 ./configure --with-omniorb=${OMNIORB_INSTALL_DIR} --prefix=${OMNIORB_INSTALL_DIR} --with-openssl make make install
omniORB、omniORBpyの動作確認をするためには環境変数PATH、LD_LIBRARY_PATH、PYTHONPATHの設定が必要です。
export PATH=${OMNIORB_INSTALL_DIR}/bin:$PATH export LD_LIBRARY_PATH=${OMNIORB_INSTALL_DIR}/lib:${LD_LIBRARY_PATH} export PYTHONPATH=${OMNIORB_INSTALL_DIR}/lib/python3.6/site-packages:$PYTHONPATH
また、pkg-configでomniORBを検出するには以下のように環境変数PKG_CONFIGを設定する。
export PKG_CONFIG_PATH=${OMNIORB_INSTALL_DIR}/lib/pkgconfig:$PKG_CONFIG_PATH
以下から ACE+TAO.zip をダウンロードしてください。
Visual Studio で ACE と TAO のビルドをします。
ACE+TAO.zip を展開したフォルダーの ace/config-win32.h を ace/config.h に変更してください。
ACE_vs2019.sln (もしくは ACE_vs2017.sln)を Visual Studio で開いてビルドしてください。 64bitの場合はソリューションプラットフォームがWin32となっている部分をx64に変更してください。
次に以下の環境変数を設定した状態でTAO_vs2019.sln (もしくは TAO_vs2017.sln)を Visual Studio で開いてビルドしてください。
環境変数 | 内容 | 設定例 |
ACE_ROOT | ACE_wrappersを展開したフォルダのパス | C:/work/ACE_wrappers |
cd TAO set ACE_ROOT=C:/work/ACE_wrappers TAO_vs2019.sln
ACE+TAO.tar.gzを入手して以下のコマンドでビルドします。
export ACE_INSTALL_DIR=~/work/ace_install sudo apt-get install gperf export ACE_ROOT=${PWD}/ACE_wrappers/build/linux export TAO_ROOT=${ACE_ROOT}/TAO export LD_LIBRARY_PATH=$ACE_ROOT/ace:$ACE_ROOT/lib export INSTALL_PREFIX=$ACE_INSTALL_DIR wget https://github.com/DOCGroup/ACE_TAO/releases/download/ACE%2BTAO-7_0_6/ACE+TAO-7.0.6.tar.gz tar xf ACE+TAO-7.0.6.tar.gz cd ACE_wrappers mkdir -p build/linux ./bin/create_ace_build build/linux echo '#include "ace/config-linux.h"' > build/linux/ace/config.h echo 'include $(ACE_ROOT)/include/makeinclude/platform_linux.GNU' > build/linux/include/makeinclude/platform_macros.GNU cd build/linux make make install cd TAO make make install
SSLIOPを有効にする場合は、以下のようにsslオプションを有効にしてSSLIOPをビルドする必要があります。
cd build/linux make ssl=1 make install ssl=1 cd TAO make SSLIOP ssl=1 make install ssl=1
また、pkg-configでACE+TAOを検出するには以下のように環境変数PKG_CONFIGを設定する。
export PKG_CONFIG_PATH=${ACE_INSTALL_DIR}/lib/pkgconfig:$PKG_CONFIG_PATH
ネームサーバーをSSLIOP通信可能な状態で起動するためには以下のコマンドを実行する。
${ACE_INSTALL_DIR}bin/tao_cosnaming -ORBSvcConf server.conf -ORBEndpoint iiop://localhost:/ssl_port=2809
エンドポイントをssliop://localhost:2809のように設定するとcorbaloc形式でのアクセスが上手くいかないため、上記のようにiiop://localhost:/ssl_port=2809と指定する。
server.confは例えば以下のようなファイルを用意する。
dynamic SSLIOP_Factory Service_Object * TAO_SSLIOP:_make_TAO_SSLIOP_Protocol_Factory() "-SSLAuthenticate SERVER_AND_CLIENT -SSLPrivateKey PEM:server_key.pem -SSLCertificate PEM:server_cert.pem -SSLCAfile PEM:cacert.pem" static Resource_Factory "-ORBProtocolFactory SSLIOP_Factory"
まず、以下の手順でomniORBをビルドしてください。
次にOpenRTM-aistをビルドします。
set OpenRTM_INSTALL_DIR=C:/work/openrtm_install git clone https://github.com/OpenRTM/OpenRTM-aist cd OpenRTM-aist mkdir build cd build cmake .. -DCMAKE_INSTALL_PREFIX=%OpenRTM_INSTALL_DIR% -DORB_ROOT=%omniORB_DIR% cmake --build . --config Release cmake --build . --config Release --target install
まずは環境変数PATHとPYTHONPATHを設定します。
set OpenRTMPython_INSTALL_DIR=C:/work/python_install git clone https://github.com/OpenRTM/OpenRTM-aist-Python cd OpenRTM-aist-Python python setup.py build python setup.py install --prefix %OpenRTMPython_INSTALL_DIR%
環境変数PATHとPYTHONPATHを設定します。
git clone https://github.com/OpenRTM/rtctree cd rtctree python setup.py build python setup.py install_lib --install-dir %OpenRTMPython_INSTALL_DIR%\Lib\site-packages
git clone https://github.com/OpenRTM/rtsprofile cd rtsprofile python setup.py build python setup.py install_lib --install-dir %OpenRTMPython_INSTALL_DIR%\Lib\site-packages
git clone https://github.com/OpenRTM/rtshell cd rtshell python setup.py build python setup.py install --prefix %OpenRTMPython_INSTALL_DIR%
インストールが完了したら環境変数の設定を行ってください。
まず、以下の手順でTAOをビルドしてください。
次にOpenRTM-aistをビルドします。
set OpenRTM_INSTALL_DIR=C:/work/openrtm_install set PATH=%PATH%;%ACE_ROOT%\lib; git clone https://github.com/OpenRTM/OpenRTM-aist cd OpenRTM-aist mkdir build cd build cmake .. -DCMAKE_INSTALL_PREFIX=%OpenRTM_INSTALL_DIR% -DORB_ROOT=%ACE_ROOT% -DCORBA=TAO cmake --build . --config Release cmake --build . --config Release --target install
インストールが完了したら環境変数の設定を行ってください。
OpenRTM-aist-Python、rtshell、rtctree、rtsprofileはTAOには対応していません。
OpenRTM-aist C++のRTC等を実行するためには環境変数%PATH%を設定する必要があります。
set PATH=%OpenRTM_INSTALL_DIR%\2.0.0\bin\vc16;%OpenRTM_INSTALL_DIR%\2.0.0\omniORB\4.3.0_vc16\bin\x86_win32;%PATH%
OpenRTM-aist Python、rtctree、rtsprofileを使うためには環境変数PYTHONPATHを設定する必要があります。
set PYTHONPATH=%OpenRTMPython_INSTALL_DIR%\Lib\site-packages;%OpenRTMPython_INSTALL_DIR%\Lib\site-packages\OpenRTM_aist;%OpenRTMPython_INSTALL_DIR%\Lib\site-packages\OpenRTM_aist\RTM_IDL;%PYTHONPATH%
rtshellを使うためには環境変数PATHの設定が必要です。
set PATH=%OpenRTMPython_INSTALL_DIR%\Scripts;%PATH%
外部のRTCをビルドするためには、CMake実行時にOpenRTMConfig.cmakeをインストールしたパスを指定する必要があります。
cmake .. -DOpenRTM_DIR=%OpenRTM_INSTALL_DIR%/2.0.0/cmake
OpenRTM-aist C++をインストールすると、環境変数を設定するバッチファイルがインストールされます。
%OpenRTM_INSTALL_DIR%\2.0.0\ext\environment-setup.omniorb.vc16.bat
このバッチファイルを実行することで以下の環境変数が設定されます。
変数名 | 設定値 | 内容 |
OMNI_ROOT | %RTM_ROOT%/omniORB/4.3.0_%RTM_VC_VERSION%/ | omniORBをインストールしたフォルダ |
OpenRTM_DIR | %RTM_ROOT%/cmake | OpenRTM-aistのCMake設定ファイルをインストールしたフォルダ |
RTM_BASE | %OpenRTM_INSTALL_DIR% | OpenRTM-aistをインストールしたフォルダ |
RTM_IDL_DIR | %RTM_ROOT%/rtm/idl | OpenRTM-aistのIDLファイルをインストールしたフォルダ |
RTM_ROOT | %OpenRTM_INSTALL_DIR%/2.0.0 | OpenRTM-aistの2.0.0をインストールしたフォルダ |
RTM_VC_VERSION | vc** | ビルドしたVisual Studioのバージョン |
PATH | %RTM_ROOT%/bin/%RTM_VC_VERSION%;%OMNI_ROOT%/bin/x86_win32;%PATH% | PATHにOpenRTM-aist、omniORBの実行ファイルのパスを追加 |
OpenRTM-aist Python、rtshellの環境変数は設定されません。 Pythonのホームフォルダ(C:\Python37等)にインストールした場合は環境変数の設定は不要ですが、それ以外は手動で設定する必要があります。
まず、以下の手順でomniORBをビルドしてください。
以下の手順で環境変数PKG_CONFIGを設定します。
次にOpenRTM-aistをビルドします。
export OPENRTM_INSTALL_DIR=$OMNIORB_INSTALL_DIR export PATH=$OMNIORB_INSTALL_DIR/bin:$PATH git clone https://github.com/OpenRTM/OpenRTM-aist cd OpenRTM-aist mkdir build cd build cmake .. -DCMAKE_INSTALL_PREFIX=$OPENRTM_INSTALL_DIR cmake --build . --config Release -- -j$(nproc) cmake --build . --config Release --target install
まずは環境変数PATHとLD_LIBRARY_PATH、PYTHONPATHを設定します。
export OPENRTMPYTHON_INSTALL_DIR=$OMNIORB_INSTALL_DIR git clone https://github.com/OpenRTM/OpenRTM-aist-Python cd OpenRTM-aist-Python python3 setup.py build python3 setup.py install --prefix $OPENRTMPYTHON_INSTALL_DIR
環境変数PATHとLD_LIBRARY_PATH、PYTHONPATHを設定します。
git clone https://github.com/OpenRTM/rtctree cd rtctree python3 setup.py build python3 setup.py install_lib --install-dir $OPENRTMPYTHON_INSTALL_DIR/lib/python3.6/site-packages
git clone https://github.com/OpenRTM/rtsprofile cd rtsprofile python3 setup.py build python3 setup.py install_lib --install-dir $OPENRTMPYTHON_INSTALL_DIR/lib/python3.6/site-packages
git clone https://github.com/OpenRTM/rtshell cd rtshell python3 setup.py build python3 setup.py install --prefix $OPENRTMPYTHON_INSTALL_DIR
インストールが完了したら環境変数の設定を行ってください。
まず、以下の手順でTAOをビルドしてください。
以下の手順で環境変数PKG_CONFIGを設定します。
次にOpenRTM-aistをビルドします。
export OPENRTM_INSTALL_DIR=$ACE_INSTALL_DIR export LD_LIBRARY_PATH=ACE_INSTALL_DIR/lib:$LD_LIBRARY_PATH git clone https://github.com/OpenRTM/OpenRTM-aist cd OpenRTM-aist mkdir build cd build cmake .. -DCMAKE_INSTALL_PREFIX=$OPENRTM_INSTALL_DIR -DCORBA=TAO cmake --build . --config Release -- -j$(nproc) cmake --build . --config Release --target install
インストールが完了したら環境変数の設定を行ってください。
OpenRTM-aist-Python、rtshell、rtctree、rtsprofileはTAOには対応していません。
OpenRTM-aist C++のRTC等を実行するためには環境変数PATH、LD_LIBRARY_PATHを設定する必要があります。
export PATH=$OPENRTM_INSTALL_DIR/bin:$PATH export LD_LIBRARY_PATH=$OPENRTM_INSTALL_DIR/lib:$LD_LIBRARY_PATH
OpenRTM-aist Python、rtctree、rtsprofileを使うためには環境変数PYTHONPATHを設定する必要があります。
export PYTHONPATH=$OPENRTM_INSTALL_DIR/lib/python3.6/site-packages:$OPENRTM_INSTALL_DIR/lib/python3.6/site-packages/OpenRTM_aist:$OPENRTM_INSTALL_DIR/lib/python3.6/site-packages/OpenRTM_aist/RTM_IDL:$PYTHONPATH
rtshellを使うためには環境変数PATHの設定が必要です。
export PATH=$OPENRTMPYTHON_INSTALL_DIR/bin:$PATH
omniORBやOpenRTM-aist等をインストールしたパスが同じ場合は以下のコマンドだけ実行します。
export PATH=$OPENRTM_INSTALL_DIR/bin:$PATH export LD_LIBRARY_PATH=$OPENRTM_INSTALL_DIR/lib:$LD_LIBRARY_PATH export PYTHONPATH=$OPENRTM_INSTALL_DIR/lib/python3.6/site-packages:$OPENRTM_INSTALL_DIR/lib/python3.6/site-packages/OpenRTM_aist:$OPENRTM_INSTALL_DIR/lib/python3.6/site-packages/OpenRTM_aist/RTM_IDL:$PYTHONPATH
OpenRTM-aist C++をインストールすると、環境変数を設定するバッチファイルがインストールされます。
source ${OpenRTM_INSTALL_DIR}/etc/environment-setup.sh
このバッチファイルを実行することで以下の環境変数が設定されます。
変数名 | 設定値 | 内容 | |
OpenRTM_DIR | ${OpenRTM_INSTALL_DIR}/lib/openrtm-2.0/cmake | OpenRTM-aistのCMake設定ファイルをインストールしたフォルダ | |
RTM_IDL_DIR | ${OpenRTM_INSTALL_DIR}/include/openrtm-2.0/rtm/idl | OpenRTM-aistのIDLファイルをインストールしたフォルダ | |
PATH | ${OpenRTM_INSTALL_DIR}/bin:$PATH | PATHにOpenRTM-aist、omniORBの実行ファイルのパスを追加 | ] |
LD_LIBRARY_PATH | ${OpenRTM_INSTALL_DIR}/lib:$LD_LIBRARY_PATH | PATHにOpenRTM-aist、omniORBの実行ファイルのパスを追加 |
OpenRTM-aist Python、rtshellの環境変数は設定されません。 Pythonのホームフォルダ(C:\Python37等)にインストールした場合は環境変数の設定は不要ですが、それ以外は手動で設定する必要があります。
外部のRTCをビルドするためには、CMake実行時にOpenRTMConfig.cmakeをインストールしたパスを指定する必要があります。
cmake .. -DOpenRTM_DIR=${OPENRTM_INSTALL_DIR}/lib/openrtm-2.0/cmake