$ wget https://github.com/OpenRTM/OpenRTM-aist/releases/tag/v1.2.1/OpenRTM-aist-1.2.1.tar.gz
$ tar xvzf OpenRTM-aist-1.2.1.tar.gz
$ cd OpenRTM-aist-1.2.1
$ls build/autogen
build/autogen*
$ sh build/autogen
Setting up environment to generate configure script.
------------------------------------------------------------
Searching Autotools
------------------------------------------------------------
autoconf was found in /usr/local/bin/autoconf.
autoheader was found in /usr/local/bin/autoheader.
autom4te was found in /usr/local/bin/autom4te.
autoreconf was found in /usr/local/bin/autoreconf.
autoupdate was found in /usr/local/bin/autoupdates.
automake was found in /usr/local/bin/automake-1.9.
aclocal was found in /usr/local/bin/aclocal-1.9.
libtool was found in /usr/local/bin/libtool.
libtoolize was found in /usr/local/bin/libtoolize.
------------------------------------------------------------
Searching libtool.m4
------------------------------------------------------------
file was found: /usr/local/share/aclocal/libtool.m4
Copying libtool.m4 from /usr/local/share/aclocal/libtool.m4
------------------------------------------------------------
Doing autoreconf
------------------------------------------------------------
autoreconf-2.62: Entering directory `.'
autoreconf-2.62: configure.ac: not using Gettext
autoreconf-2.62: running: /usr/local/bin/aclocal-1.9 --force
autoreconf-2.62: configure.ac: tracing
autoreconf-2.62: configure.ac: adding subdirectory src/lib/coil to autoreconf
autoreconf-2.62: Entering directory `src/lib/coil'
autoreconf-2.62: running: /usr/local/bin/libtoolize --copy --force
You should update your `aclocal.m4' by running aclocal.
autoreconf-2.62: running: /usr/local/bin/autoconf --force
autoreconf-2.62: running: /usr/local/bin/autoheader --force
autoreconf-2.62: running: /usr/local/bin/automake-1.9 --add-missing --copy --force-missing
configure.ac: installing `./install-sh'
configure.ac: installing `./missing'
ace/coil/Makefile.am: installing `./depcomp'
Makefile.am: installing `./INSTALL'
autoreconf-2.62: Leaving directory `src/lib/coil'
You should update your `aclocal.m4' by running aclocal.
configure.ac: installing `./install-sh'
configure.ac: installing `./missing'
examples/AutoTest/Makefile.am: installing `./depcomp'
Makefile.am: installing `./INSTALL'
autoreconf-2.62: Leaving directory `.'
done
$
パッケージが用意されていないUNIX系の環境や、クロス開発環境などで、OpenRTM-aist本体のソースを変更したり再ビルドて、OpenRTM-aistを利用したい場合には、ソースからビルド可能です。ここでは、ダウンロードページやリポジトリからソースを取得しLinux上でOpenRTM-aist をビルドする方法を説明します。
配布ソースのビルド
OpenRTM-aist(C++版)はautotoolsを利用したビルド環境を提供しているため、さまざまな環境でビルドできます。
対応 OS およびディストリビューション
OpenRTM-aistは下記のLinuxディストリビューションでビルドできることが確認されています。
これ以外の環境でも、一般的Linux/UNIX環境であれば、ビルドできる可能性があります。
必要ツールとライブラリ
OpenRTM-aist-1.2.xをソースからビルドするには下記の開発用ツールおよびライブラリが必要です。
それぞれのライブラリなどのドキュメントに従いインストールを行ってください。これらが標準のディレクトリ(/usr、/usr/localなど)下にインストールされていると、以降のOpenRTM-aistのコンパイル作業を比較的簡単に行うことができます。
UbuntuやFedoraなどの特定のディストリビューション向けには、一括インストール・スクリプト ''pkg_install_OS名.sh’’という依存ライブラリやOpenRTMのパッケージをインストールするスクリプトが用意されていて、それにより必要なツールをインストールすることができます。下記のリンクに入手方法やコマンドラインオプションなどが説明されています。
このスクリプトを-cオプションを用いて実行することにより、コア(OpenRTM-aist自体の)開発用のツールをインストールすることができます。それを実行するか、別個に必要なツールをインストールしておいてください。
ソースのダウンロード
OpenRTM-aistのソースをダウンロードします。 ソースコードは、https://github.com/OpenRTM/OpenRTM-aist/releases のバージョン番号のタグからダウンロードできます。バージョン1.2.1のソースコードは以下の場所にあります。ソースコードの展開
まずソースコードOpenRTM-aist-X.X.X.tar.gzを適当なディレクトリに展開します。
ビルド
OpenRTM-aistはパッケージのビルドにautoconf、automakeを使用しています。上記の方法でダウンロードできるソースコードのパッケージは、あらかじめそれらのツールを使用して構成されているものです。
基本的には[options]の指定はいりませんが、特別な設定をしたい場合の[options]で使用可能なオプションは
で参照してください。
make
configureが正常に終了したことを確認してください。正常に終了したらmake します。
ビルドが正常に終了したら、ヘッダファイル、ライブラリ、ユーティリティコマンド群をインストールします。
以上で、ソースコードからのビルドおよびインストールは終了です。
GitHubリポジトリ上のソースを用いたビルド
OpenRTM-aistは開発に利用しているgithubリポジトリを一般に公開しています。リポジトリからクローンしたソースコードを用いてもビルド可能です。
必要なツール
リポジトリからチェックアウトしたソースはconfigureスクリプトやMakefile.inが含まれていません。これらを生成するには、
などのツールが必要ですのであらかじめインストールしておきます。これらの必要なツールやOmniORBなどのライブラリをインストールするのにあたって、Ubuntuなどでは上記で説明した一括インストール・スクリプトを利用可能です。このスクリプトをあらかじめ実行しておくことを推奨します。
Ubuntuでは上記で推奨した一括インストールスクリプトpkg_install_ubuntu.shを以下のように実行することで、OpenRTM-aist本体の開発(ここで行うソースからのビルドも含みます)のためのツール(automakeなどを含む)などをまとめてインストール可能です。
GitHubリポジトリからのソースのクローン
ソースをリポジトリからクローンします。
autogen.shの実行
クローンすると、OpenRTM-aistというディレクトリができているはずですので、そのディレクトリに入ります。
buildディレクトリの下にautogenというシェルスクリプトがあることを確認し、このスクリプトを実行します。実行には、数分程度の時間がかかることがあります。
configure & ビルド
autogenの実行により、configureがOpenRTM-aistディレクトリ内にできているはずですので、以降は通常のソースからのビルドと同様に、configure & makeでビルドします。
make dist
make distを行うことでopenrtm.orgで配布しているようなソースのパッケージの作成も可能です。 また、make dist では Windows上でビルド可能なソースコードのパッケージも同時に作成します。 ただし、make distを行うには、doxygenやlatex、qkcなど、追加のコマンドが必要です。
生成されるソースパッケージはそれぞれ以下の通りです。