メインコンテンツに移動
ホーム >> OpenRTM-aist (C++版) 1.x系のインストール >> ソースからのビルド (Windows編)

ソースからのビルド (Windows編)

OpenRTM-aist本体に手を加えたうえでWindows上で利用したい場合は、Windows用ソースパッケージを自分でビルドするができます。ここでは、ダウンロードページやリポジトリからソースを取得しWindows上でOpenRTM-aistをビルドする方法を解説します。

Windows上でのOpenRTM-aistのビルドは、環境の整備やインストーラの作成など、Windows上での様々な知識が必要となります。 本ドキュメントは、Windows上でのプログラム開発やバッチファイル等の基本的な知識がある方を対象としています。

Windows用ソースコード

Windows 用の OpenRTM-aist (C++版) ソースパッケージは Linux 用のソース とは別に配布されています。ソースコードの内容は全く同じですが、以下の部 分が異なっています。

  • 文字コード (Windows: Shift-JIS, Linux: EUC)
  • Visual Studio のソリューションを含む
  • Visual C++ のプロジェクトファイルを含む
  • msiインストーラ作成環境を含む

ソースコードの構成

図に示すように、オリジナルは subversion リポジトリのソースコードで、そのソースコードから、Linux上で、

  • Linux/Unix用ソースコード配布パッケージ
  • Windows用ソースコード配布パッケージ

の2種類を作成する構成になっています。

openrtm_src_dist_ja.png
OpenRTM-aistのソースの構成

リポジトリから取得した最新のソースコードをWindowsで利用する場合は、一旦LinuxでWindows用のソースコードを生成する必要があります。

ビルド環境

ビルドに必要な環境、ライブラリは以下の通りです。

  • Visual C++
    • Visual C++ Express Editionでも利用可能です
  • omniORB

Visual C++/Visual Studio

Windows用のバイナリをビルドするためには、Visual C++開発環境が必要です。 現在対応しているVisual C++は Visual C++ 2008, 2010, 2012, 2013です。

Visual C++ Express Edition は Microsoft が無償で提供するC++の開発環境で、 MFCやATLなどは利用できませんが、Windowsアプリケーション(Win32アプリケー ション)を開発することができます。OpenRTM-aistを利用したコンポーネント開 発でも、MFCやATLなどを利用しないコンポーネントはVisual C++ Express Edition のみで開発することができます。下記リンクからISOイメージをダウン ロードしてインストールした上で、Microsoft Live IDを取得してライセンス (無料)を取得してください。

omniORB

OpenRTM-aist のビルドには omniORB 4.1.7(2015/03/31現在)のライブリが必要です。 openrtm.org が提供するビルド済みバイナリパッケージを下記リンク先に用意してあります。 環境に合わせて適切なものをダウンロードし、適当な場所 (以下では C:\distribution\omniORBを仮定)に展開してください。

環境変数: OMNI_ROOT

環境変数OMNI_ROOT を設定する必要があります。OMNI_ROOT に設定したディレクト リ以下は以下のような構造になっている必要があります。

 <OMNI_ROOT>
  + bin
  |  + scripts
  |  + x86_win32
  + idl
  |  + COS
  + include
  |  + COS
  |  + omniORB4
  |  |  + internal
  |  + omnithread
  |  + omniVms
  + lib
  |  + python
  |  |  + omniidl
  |  |  + omniidl_be
  |  |     + cxx
  |  |        + dynskel
  |  |        + header
  |  |        + impl
  |  |        + skel
  |  + x86_win32

WiX

1.1.1-RELEASE版ではソースに含まれているインストーラ作成コードのメンテナンスは行っておりません。

WiX (Windows Installer XML) は Windows の msi インストーラをコマンドラ インベースのツール群で作成することを目指しているオープンソースのプロジェ クトです。

OpenRTM-aist はWindows用のインストーラをWiXを利用して作成しています。 インストーラまで作成する場合には、WiXを予めインストールしておいてください。

Python

ビルドの途中でいくつかのPythonスクリプトを利用するのでPython 2.7 が必要にな ります。以下のサイトから最新のものを取得しインストールしてください。

インストーラを起動すると、ウィザードで幾つか選択する部分がありますが、 デフォルトのままでインストールしてかまいません。

ソースパッケージの取得

まずソースコード OpenRTM-aist-1.1.1-win32.zip をダウンロードし、適当な ディレクトリに展開します。

バッチファイルの修正

build.bat の先頭に以下のような部分があります。これらが、それぞれ適切な値に設定されているかを確認してください。 
ARCH, VC_VERSION の設定については、このバッチファイルに記述されている説明をご覧下さい。

 set RTM_ROOT=%~dp0
 set COIL_ROOT=%RTM_ROOT%\coil
 set OMNI_ROOT=C:\distribution\omniORB-4.1.7-win64-vc12
 if not DEFINED ARCH       set ARCH=x86_64
 if not DEFINED VC_VERSION set VC_VERSION=12
 if not DEFINED PYTHON_DIR set PYTHON_DIR=C:\Python27_x64

ビルド

以上の準備が完了したら、ビルドを行います。build.batをダブルクリックし、起動すれば自動でビルドが始まります。

インストール

すべてが正しくビルドできたら次のことを行い、インストールを完了させます。

  • 環境変数RTM_ROOTを設定: OpenRTM-aistのディレクトリを環境変数RTM_ROOTに設定してください。
  • DLLへのパスを通す: DLLをパスの通った場所にコピーする、あるいは、環境変数PATHに%RTM_ROOT%\bin を追加します。
  • 環境変数PATHの設定: 環境変数PATHに%RTM_ROOT%\binだけでなく%RTM_ROOT%\utils\rtc-templateも登録することをお勧めします。

以上で、OpenRTM-aistのインストールは終了です。