概要
OpenRTM-aist および RTコンポーネントを Intel(i386) 以外の CPU で動かしたい場合、SH4 や PPC など遅い CPU ではコンパイルに時間がかかり効率よく開発できない場合があります。 他の CPU 用の OpenRTM および RTコンポーネントを Intel(i386) CPU 上でコンパイル・開発するためのクロス開発環境を作成すれば、C2D や Quad など最近の速い PC 上で効率よく開発することができます。 このTIPSはアックスの森田さんにご提供いただきました。
開発環境
Fedora6 推奨です。 他の環境では、ビルドスクリプトが動作しない可能性があります。
こちらにある講習会用の VMwareImage が利用可能です。
必要なファイルをダウンロードする
クロス開発に必要なファイルをダウンロードします。
toolchain
toolchain とは特定のアーキテクチャ用のビルドと開発に使用されるソフトウェアパッケージの集合体のことです。 個々では、SH4 をターゲットアーキテクチャとした開発を想定していますので、SH4 用の toolchain が必要となります。
ACE
ACE は OpenRTM-aist で必要とされるライブラリです。 SH4 用にビルドされたものが必要となりますので、すでに PC に ACE がインストールされていても、後述の自動化スクリプトで改めてビルドする必要があります。
omniORB
omniORB は OpenRTM-aist で必要とされるライブラリです。 SH4 用にビルドされたものが必要となりますので、すでに PC に omniORB がインストールされていても、後述の自動化スクリプトで改めてビルドする必要があります。
boost
OpenRTM-aist
ビルド自動化スクリプト
以下のビルド自動スクリプトをダウンロードします。 上記のパッケージのパッチおよび自動ビルドに必要なスクリプトが入っています。(アックス 森田さん提供)
ビルドする
アーカイブの展開
まず、以下の3つのディレクトリー(A)、(B)、(C)を用意します。
- (A) Build、SH4、OpenRTM.tgz を展開してできるディレクトリー(Build_SH4_OpenRTM)
- (B) OpenRTM-aist の環境がインストールされるディレクトリー
- (C) ビルド作業用ディレクトリー
ビルドスクリプトの実行
- 上記の toolchain、ACE、omniORB、boost、OpenRTM-aist のアーカイブをディレクトリー(A)の中に置く。
- (A)のディレクトリー内で、以下のように ./Build_SH4_SDK.sh を実行します。
$./Build_SH4_SDK.sh [(B)のフルパス] [(A)のフルパス] [(C)のフルパス]
スクリプトの実行が完了すると、ディレクトリー(B)内に OpenRTM の環境と SH4のtoolchain、ビルドされた ACE ライブラリが作成されます。