RtORB版OpenRTM-aistの構築
An Open Software Platform for Robotic Technologies
Home RTC Software
OpenRT Platformソフトウェア >> 軽量CORBA RtORB >> RtORB版OpenRTM-aistの構築

RtORBを使用したOpenRMT-aist

全体の手順
  1. 各ソースコードをチェックアウトする。
  2. 必要なライブラリ・ツールをインストールする(Linux/FreeBSD/Cygwin)
  3. RtORBをコンパイルする
  4. OpenRTM-aistをRtORBを指定してコンパイルする。
  5. RtORBのネームサーバーを起動する
  6. RtComponentを起動する(SeqInComp,SeqOutComp)
  7. Eclipseで動作確認する

各ソースコードをダウンロード・チェックアウトする。

RtORBとOpenRTM-aistのソースコードをリポジトリからチェックアウトします。

RtORB

RtoORBのソースコードをリポジトリからチェックアウトします。
 $ svn co --username rtorb-dev http://www.openrtp.jp/repos/stuff/RtORB-aist/trunk
 $ mv trunk rtorb_trunk 
チェックアウトしたtrunkはmvで名称を変更してください。

OpenRTM-aist

RtoORBのソースコードをリポジトリからチェックアウトします。
 $ svn co --username anonymous   http://openrtp.jp/openrtm/svn/OpenRTM-aist/trunk/
分かりやすく名称を変更しました。
 $ mv trunk/OpenRTM-aist ./openrtm_trunk 
空のtrunkを削除します。
 $ rm –rf trunk 

ライブラリ・ツールのインストール

コンパイルに必要なライブラリ・ツールを作業環境にインストールします。

Linuxの場合(ubuntu/vine)

Apt-getコマンドでライブラリとツールをインストールします。
  • g++
  • libidl-dev
  • uuid-dev
  • autoconf
  • libtool
  • cmake (※RtORBのコンパイルにcmakeを使用する場合)
コマンドでインストールします。
 $ apt-get install g++ libidl-dev uuid-dev autoconf libtool cmake

FreeBSDの場合

Portsを使用してインストールします。
  • e2fsprogs(/usr/ports/misc/e2fsprogs-libuuid/)
  • glib-2.0(/usr/ports/devel/glib20/)
  • libIDL(/usr/ports/devel/libIDL/)
  • autoconf(/usr/ports/devel/autoconf262/)
  • libtool22(/usr/ports/devel/libtool22/)
  • automake(/usr/ports/devel/automake110)
  • cmake(/usr/ports/devel/cmake)※cmakeでコンパイルする時
portsのインストール・アップデートをします。
 $ portsnap fetch
 $ portsnap extract
 $ portsnap update
()カッコ内のディレクトリに移動し、
 $ make deinstall 
 $ make install 
 $ make clean
を行ってください。

Cygwinの場合

特になし

RtORBをコンパイルする。

チェックアウトしたディレクトリに移動します。
 $ cd /home/openrtm/rtorb_trunk
makeの場合
 $ make
Linuxでlibuuidをインストールしていない場合には、RtORB内部でIDを生成できるようになっています。その場合には、
 $ meke "MAKE_OPT= -no_libuuid"
としてください。
cmake.の場合
 $ cmake .
 $ make
コンパイルが正常に終了すると以下のファイルが生成されています。
Linux/FreeBSDの場合
  • ./idl-compiler/rtorb-idl
  • ./lib/libRtORB.so
  • ./lib/libRtORB_cpp.a
  • ./lib/CXX/libRtORB_cpp.so
  • ./CosName/NameSevice
Cygwinの場合
  • ./idl-compiler/rtorb-idl.exe
  • ./lib/RtORB.dll
  • ./lib/RtORB_cpp.dll
  • ./lib/CXX/RtORB.dll
  • ./CosName/NameSevice.exe

OpenRTM-aistをRtORBを指定してコンパイルする。

ダウンロード・チェックアウトしたOpenRTMをコンパイルするまえにconfigureを作成します。
 $ cd ./openrtm_trunk/
 $./build/autogen
 $ ls configure (configureが確認できます。)
 $./configure –with-rtorb=/home/openrtm/rtorb_trunk オプションはフルパスで指定してください。
 $ make

RtORBのネームサービスを起動する。

ライブラリのパスを通し、ネームサービスを起動します。

ライブラリのパスを通す。

Linuxの場合
 $ export LD_LIBRARY_PATH=/home/openrtm/rtorb_trunk/lib:${LD_LIBRARY_PATH}
※envコマンドで確認できます。
FreeBSDの場合
 $ setenv LD_LIBRARY_PATH /home/openrtm/rtorb_trunk/lib
※envコマンドで確認できます。
Cygwinの場合
 $ PATH=/home/openrtm/rtorb_trunk/lib:$PATH

ネームサービスを実行します。

 $ cd /home/openrtm/rtorb_trunk/bin
 $ ./NameService

RtComponentを起動する

1. Rtコンポーネント起動する別のコンソールを開きます
   ※各作業環境で新たにコンソール画面を開いてください。
2. 新しいコンソール画面でRtコンポーネントに必要なライブラリのパスを通します。
   ※ネームサービスと同じ。
3. Rtコンポーネントを起動します。
 $ cd /home/openrtm/rtorb_trunk/example/SeqIO
 $ less rtc.conf
※corba.nameservers:localhosts を確認してください。
 $./SeqInComp
※同様に./SeqOutCompも起動してください。
これで3つのプログラムが起動しました。
  • ネームサービス
  • SeqInComp
  • SeqOutComp

EclipseでRtコンポーネントを接続する

省略