Java RTC CPackによる rpm 作成 動作確認¶
RTCBuilder が生成するJava RTCのソースコードをビルド、パッケージ作成、パッケージのインストール、パッケージのアンインストールを実施して、問題がないことを確認します。
以下がインストールされていることを前提とします。
ソフトウエア |
|
OpenRTM-aist |
3言語(C++、Java、Python)+ツール(Eclipse+rtshell) |
CMake |
MakeFileを生成します。 |
JDK |
RTCをビルドするために必要です。 |
ant |
WiX Toolset |
msiを生成するために必要です。 |
Graphviz |
確認の流れ¶
- RTCBuilder で Java の RTC を生成
- ビルド
- CMake
- CPack
- インストール
- 起動と終了
- アンインストール
RTCBuilder で Java の RTC を生成¶
データポート、サービスポート、コンフィグレーションを持つRTCを生成します。
以下の設定でコード生成します。
タブ |
項目 |
設定 |
基本プロファイル |
モジュール名 |
JavaRTCTest |
バージョン |
3.1.4 |
モジュールカテゴリ |
Tests |
アクティビティ |
onExecute |
ON |
データポート |
ポート名(InPort) |
foo |
データ型 |
TimedString |
ポート名(OutPort) |
bar |
データ型 |
TimedString |
サービスポート |
IDLファイル |
C:\Program Files (x86)\OpenRTM-aist\1.2.0\Components\Java\RTMExamples\SimpleService\MyService.idl |
インターフェース型 |
MyService |
コンフィギュレーション |
データ型 |
int |
デフォルト値 |
1 |
言語・環境 |
Java |
ON |
ビルド¶
コード生成後、Javaパースペクティブを開いて、build_JavaRTCTest.xml のファイルを右クリックし、[実行]-[1 Ant ビルド] を選択します。
これでビルドが開始されます。
✔ コンソールウィンドウにエラーが表示されずにビルドが終了することを確認します。
✔ workspaceのプロジェクトのbinにclassファイルがあることを確認します。
classファイル一覧...classファイル一覧...
JavaRTCTest.class |
JavaRTCTestComp.class |
JavaRTCTestImpl.class |
EchoListHelper.class |
EchoListHolder.class |
MyService.class |
MyServiceHelper.class |
MyServiceHolder.class |
MyServiceOperations.class |
MyServicePOA.class |
MyServiceSVC_impl.class |
ValueListHelper.class |
ValueListHolder.class |
_MyServiceStub.class |
✔
workspace のプロジェクトのdocにhtmlファイルがあることを確認します。
htmlファイル一覧...htmlファイル一覧...
EchoListHelper.html |
EchoListHolder.html |
JavaRTCTest.html |
JavaRTCTestComp.html |
JavaRTCTestImpl.html |
MyService.html |
MyServiceHelper.html |
MyServiceHolder.html |
MyServiceOperations.html |
MyServicePOA.html |
MyServiceSVC_impl.html |
ValueListHelper.html |
ValueListHolder.html |
_MyServiceStub.html |
allclasses-frame.html |
allclasses-noframe.html |
constant-values.html |
deprecated-list.html |
help-doc.html |
index.html |
overview-tree.html |
package-frame.html |
package-summary.html |
package-tree.html |
package-use.html |
serialized-form.html |
CMake¶
cmake を実行します。
$ mkdir build
$ cd build
$ cmake ../
✔
エラーがないことを確認します。
CPack¶
cpackを実行します。
$ cpack
✔
エラーなくcpackが終了することを確認します。✔
「JavaRTCTest-3.1.4-x86_64.rpm」が生成されていることを確認します。
インストール¶
$ sudo rpm -i JavaRTCTest-3.1.4-x86_64.rpm
✔
エラーなくインストールが完了することを確認します。✔
指定のフォルダに必要なものがインストールされているこを確認します。
構成...構成...
+--usr
+--share
+--openrtm-<version>
+--components
+--java
+--Tests
+--JavaRTCTest
+--CMakeLists.txt
+--CMakeLists.txt
+--JavaRTCTest.conf
+--JavaRTCTest.sh
+--JavaRTCTest.class
+--JavaRTCTestComp.class
+--JavaRTCTestImpl.class
+--<IDLモジュール名>SVC_impl.class
+--RTC.xml
+--rtc.conf
+--EchoListHelper.class
+--EchoListHolder.class
+--MyService.class
+--MyServiceHelper.class
+--MyServiceHolder.class
+--MyServiceOperations.class
+--MyServicePOA.class
+--ValueListHelper.class
+--ValueListHolder.class
+--_MyServiceStub.class
+--html
+--EchoListHelper.html
+--EchoListHolder.html
+--JavaRTCTest.html
+--JavaRTCTestComp.html
+--JavaRTCTestImpl.html
+--MyService.html
+--MyServiceHelper.html
+--MyServiceHolder.html
+--MyServiceOperations.html
+--MyServicePOA.html
+--MyServiceSVC_impl.html
+--ValueListHelper.html
+--ValueListHolder.html
+--_MyServiceStub.html
+--allclasses-frame.html
+--allclasses-noframe.html
+--constant-values.html
+--deprecated-list.html
+--help-doc.html
+--index.html
+--overview-tree.html
+--package-frame.html
+--package-summary.html
+--package-tree.html
+--package-use.html
+--serialized-form.html
起動と終了¶
インストールしたJavaRTCTestを実行します。
$ /usr/share/openrtm-1.2/components/java/Tests/JavaRTCTest/JavaRTCTest.sh
✔
画面にエラーが表示されずに起動することを確認します。✔
RTSystemEditorのネームサービスビューに JavaRTCTest0|rtc があることを確認します。ネームサービスビューに JavaRTCTest0|rtc を右クリックして[Exit]をクリックします。
✔
JavaRTCTestが終了することを確認します。
アンインストール¶
$ sudo rpm -e JavaRTCTest
✔
アンインストールが実行されエラーなく完了することを確認します。✔
インストールしたファイルが削除されていることを確認します。