OpenRTM-aistをMac OS X Mavericksにインストールする

# OpenRTMとは
> ロボットシステムをコンポーネント指向開発するためのソフト ウエアプラットフォームです。
　　引用元：[OpenRTM-aistとは？](http://openrtm.org/openrtm/ja/content/openrtm-aistとは？)

ロボット制御の時に使うミドルウェアとして[ROS](http://wiki.ros.org/ja)が有名かと思いますが、日本製のこんなミドルウェアがあるんですよという紹介と、開発環境のインストールをまとめる。

## わかりやすい解説
ysugaさんという、OpenRTM界隈でかなり有名な方が大方まとめてくださっているので、ありがたくリンクを貼らせていただきます。
[RTM基礎知識](http://ysuga.net/?cat=16)
[ROSとRTミドルウエアの比較](http://ysuga.net/?p=146)
[ROSとRTMの違い：モデルベースなシステムエンジニアリングの視点から](http://ysuga.net/?p=287)

# Qiitaでの扱い
![hoge.jpg](https://qiita-image-store.s3.amazonaws.com/0/64040/00fbd290-bb17-8659-60cf-e20acaafcb44.jpeg)

全部[Raspberry Piの初期設定解説](http://openrtm.org/openrtm/ja/node/266)へのリンクでした。
悲しみ

# Macにインストール
という訳で、OpenRTMを使うべく、諸々をインストールしましょう。
WindowsとLinux(Ubuntu)なら公式ページの通りに作業すれば終わるんだけど、Mac版は解説が雑なのであれに従っているとインストールできないはず。
基本的には先に挙げたysugaさんのサイトにある解説（[MacOSX + OpenRTM-aist](http://ysuga.net/?p=206)）に書いてあるように導入を進めればOK。
しかしながら現段階で若干異なる記述もあるので、以下のように進めるといい感じ。
Mavericksで実行する前提で進めるけどたぶんYosemiteでもできるはず。

## Xcode入れる

App Storeで[Xcode](https://itunes.apple.com/jp/app/xcode/id497799835?mt=12)落とす。

コンソールで済むプログラムだけ作る予定の場合はXcode入れなくてもOK。
2.5GBは回線圧迫するしね。

HomebrewやOpenRTMでも利用するXcode Command Line Toolsをインストール。
ターミナルを起動して以下のコマンドを入力するとポップアップが出てくるのでそれに従っていれば勝手に入る。
```xcode-select --install
```

## 必要パッケージとOpenRTM-aist(C++版)落として入れる
ysugaさんの解説ページからOpenRTM-aist-C++-1.1.1RELEASE-OSX10.9.dmgをDL。

Homebrewが入ってたら次のコマンドを入力
```brew install cmake doxygen git pkg-config
```
入ってないならysugaさんの解説ページからCMake、Doxygen、PkgConfigを落とす。

そんでもってさっき落としたOpenRTM〜〜.dmgを開いて中身のpkgを実行。ちゃちゃっと入れてしまいましょう。

## Eclipse入れる
OpenRTMはGUIだとEclipseを使って諸々するようになってるので、Eclipse入れることがほぼ必須になる。
公式でいわゆる[全部入りパッケージを公開している](http://openrtm.org/openrtm/ja/node/30)んだけど、Stable版がEclipse-3.8となっているので、ちょっと古い。
という訳で、最新版をインストールし、プラグインを追加していくスタイルで導入しましょう。
（全部入りパッケージで別に良いよって場合は、設定ファイルだけ作成すること）


[Eclipseの公式サイト](http://www.eclipse.org/downloads/)から好きなバージョンのEclipseを落として任意のディレクトリに保存。
（/Applicationsに入れるとLaunchPadからEclipseが起動できていい感じ）
CDT版を入れるとすぐにC++の開発が進められます。
ここでは/Applicationに保存したと仮定して進めましょう。

日本語化すべく[Pleiadesプラグイン](http://mergedoc.sourceforge.jp)を落とす。

/Applications/eclipse/Eclipse.app/Contents/MacOS/eclipse.iniをエディタで開く。
vimでもemacsでもnanoでも好きなのを使えば良いと思います。
そんでもって次の1文を末尾に挿入。
```-javaagent:../../../plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar
-Xverify:none
```
Pleiadesを適用すると起動画面が変更されるので、元々の方が良いよーという人は次のように記述しましょ
```-javaagent:../../../plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar=default.splash
-Xverify:none
```

そしたらEclipseを起動。
無事日本語で起動したら、メニューバーから「ヘルプ」→「新規ソフトウェアのインストール」を選択。
作業対象に「Luna」を選択するとリストのアップデートがかかるのでちょっと待つ。
リストが表示されたら、「モデリング」タブを開き、次の4つにチェックを入れる。

+ EMF - Eclipse モデリング・フレームワーク SDK
+ EMF - Eclipse Modeling Framework Xcore SDK
+ グラフィカル編集フレームワーク GEF SDK
+ XSD - XML スキーマ定義 SDK

「次へ」を押してインストールする。

上記プラグインのインストールが若干時間かかるので、その間にOpenRTM用のプラグインを落とす。
[ここ](http://openrtm.org/openrtm/ja/node/30#toc8)からjarファイルを落とし、pluginsディレクトリに投げ込む。

## 設定ファイルを作成する。

次のようなファイルを作成する。既にファイルがある場合は追記する。

```bash:~/.bash_profile
export RTM_ROOT=/usr/local/include/openrtm-1.1
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.7/site-packages
export CMAKE_PREFIX_PATH=/usr/local/lib/openrtm-1.1/cmake:$CMAKE_PREFIX_PATH
```

```bash:/etc/launchd.conf
setenv RTM_ROOT /usr/local/include/openrtm-1.1
setenv PKG_CONFIG_PATH /usr/local/lib/pkgconfig
```

ysugaさんの解説では~/.launchd.confに記述するように、とあるがこっちのファイルはLion時代からサポート対象外らしいので、/etc/launchd.confに記述しましょう。


# これで試せます。
やっとこさセットアップが終了です。
ただし、これは最低限のセットアップなので、Python版を入れたりrtshellを使ったりしたい場合はやはり先ほど挙げた[ysugaさんの解説](http://ysuga.net/?p=206)の通りに導入すればおっけーです。

RTM人口が増えることを願って。