ソースコードからのビルドとインストール(Windows編)¶
準備¶
コレオノイドをソースコードからインストールするには、ビルドに必要なツールとライブラリを予め準備する必要があります。
- 必要なツール
- Visual C++ 2008 又は 2010
- CMake 2.8.6
- 必要なライブラリ
- Boost 1.47.0
- Qt 4.8.0
- OpenSceneGraph 3.0.1
まず、上記のツールとライブラリをインストールをして下さい。なお、上記の各バージョン番号は2011年12月16日時点での目安となるものです。これらより古いバージョンのものに必ずしも対応しないわけではありませんし、一方でこれらよりバージョンが上のものでビルドに失敗することもあり得ます。一般的にはバージョン番号の2番目の値までが同じであれば、同様に使えると考えてよろしいかと思います。
各ツール・ライブラリのインストールに関する補足を以下に述べます。
- Visual C++
製品版でも結構ですし、無料で使用可能な Express Edition をダウンロードして利用することも可能です。
注釈
現在のところ、Visual C++ 2010 においてはデバッグ版でビルドすると実行が出来ません。(コレオノイドで使用している boost.multi_array ライブラリとVC++2010を組み合わせた際の問題で、今後 multi_array の利用を止めることによりこの問題を解決できればと考えています。)デバッグが必要な場合は、今のところVisual C++ 2008 を利用するようお願いします。
- CMake
CMakeのダウンロードページ より、Windows版のインストーラをダウンロードできます。
- Boost
ヘッダーのみではなく、system、filesystem、program_options、regex、signals、thread、iostreams 等のコンパイルが必要なライブラリも必要になります。コンパイル済みライブラリの取得には、 BoostProのダウンロードページ にて配布されているWindows版インストーラを利用するのが簡単です。この場合、インストールダイアログにて対応するVisual C++のバージョンをチェックし、ライブラリの形式については Multithread DLL をチェックします。デバッグ版もビルドする場合は、Multithread debug DLL もチェックしておきます。インストールするライブラリは全てをチェックしておけばよいかと思います。
- Qt
Qt のダウンロードページ より、Windows版のインストーラをダウンロードできます。パッケージの種類がいくつかありますが、通常は "Qt libraries" の Windows版(VS 2008, もしくは VS2010 用)を使うのがよろしいかと思います。
- OpenSceneGraph
AlphaPixel の OpenSeneGraphバイナリダウンロードページ から、対応するパッケージをダウンロードして使うのが簡単です。それぞれのバージョンに対してアーカイブが3つに分かれていますが、全てダウンロードして展開し、ひとつのディレクトリに統合しておく(エクスプローラ上でコピーして「フォルダを統合しますか?」に「はい」と応える、などする)と使いやすいかと思います。7zファイルの展開は 7-Zip というソフトで行うことが出来ます。
注意
このOpenSceneGraphライブラリの利用により、コレオノイドでは一般的なフォーマットの3Dモデルファイルを表示用として読み込んだり、3D表示領域を画像ファイルとして保存したりすることも可能です。その際に日本語等の非アスキー文字を含むファイルパスを利用したい場合は、OpenSceneGraphのビルド時に "OSG_USE_UTF8_FILENAMES" というビルドオプションを有効にしておく必要があります。上記のAlphaPixelで配布されているバイナリはこのオプションが有効になっていないようですので、ご注意ください。
次に、コレオノイドのソースコードをダウンロードページからダウンロードして適当なフォルダに展開して下さい。 このときパスに日本語が含まれていますとエラーが出る可能性がありますので注意して下さい。
以下では、コレオノイドのソースコードは、 C:¥src¥choreonoid
の下に展開していると仮定して説明を進めていきます。
以上で準備完了です。
CMakeを実行¶
まず、スタートメニューからCMake(cmake-gui)を起動します。すると下記のようなダイアログが表示されます。
次に、上図の赤枠①で示された where is the source code の右側の入力ボックスにコレオノイドのソースコードのトップフォルダ( C:¥src¥choreonoid
)を入力し、 where is build the binaries の右側の入力ボックスにコレオノイドをビルドするフォルダを入力します。
ビルドするフォルダはソースコードのトップと同じでも構いませんが、わかりにくくなるかもしれませんので、ソースコードのトップフォルダの下にbuildというフォルダを作成して、そこ( C:¥src¥choreonoid¥build
)を入力することにします。
フォルダの入力が終われば、赤枠②の [Configure] を押下します。
すると下図のようなダイアログが開きますので、コンパイラを選びます。
お使いのVisual C++ バージョンに合わせて、 Visual Studio 9 2008 または Visual Studio 10 2010 を選択し、 [Finish] を押下します。
すると、CMakeのConfigureが進行し、再度、下図のようなエラーダイアログで停止します。 これは、OpenSceneGraphに関する設定が見つからなかったためです。 [OK] を押下して下さい。
次に、上部のEntry入力部の OSG_DIR の右の入力ボックスにOpenSceneGraphをインストールした(アーカイブを展開した)フォルダを入力します。OSG_DIR の設定が終わったら、再度、 [Configure] を押下して下さい。
注釈
他のライブラリに関しても、CMakeのバージョンやインストールしたライブラリのバージョン、インストール箇所などによっては、検出できずに同様のエラーが出ることがあります。この場合、上記のOpenSceneGraphと同様に、手動でインストール先を入力するようにしてください。なお、Boostに関してはお使いのCMakeやコレオノイドがリリースされた時期よりも新しいバージョンのものは、基本的に検出できないようです。この場合、自動検出を行うためには、ChoreonodiソースのトップディレクトリのCMakeLists.txtにある "Boost_ADDITIONAL_VERSIONS" に使いたいバージョン番号を追加する必要があります。
すると、Configureが進行し、下図のような画面でストップします。 これはエラーではありませんが、インストールするプラグンを選択する画面です。 チュートリアルでは、G-ROBOTS GR-001を使いますので、 BUILD_GROBOT_PLUGIN のチェックボックスを選択状態にして [Configure] を押下して下さい。
Configureが進行し、下図のように下部のメッセージ出力部に、 “Configuring done” と表示されたら設定完了です。
注釈
上記の設定を行うと、 CMAKE_INSTALL_PREFIX が C:¥Program Files¥Choreonoid
になっています。
Windows7 では、 C:¥Program Files
以下は、管理者以外はアクセス不可になっているようですので、インストール時に失敗する可能性があります。
ソースコードからビルドされる場合には、この値を C:¥User¥
などの書き込み可能なフォルダを指定しておく方がよいと思います。
また、デフォルトではインストール先にコピーされるのは、コレオノイドのソースから作成したライブラリとコマンドのみであり、Boost や OpenSceneGraph 等のライブラリはコピーされません。もしコレオノイドの起動時に必要なファイルをすべてインストールさせたい場合には、 INSTALL_DEPENDENCIES の項目にチェックを入れておいて下さい。 INSTALL_DEPENDENCIES にチェックを入れない場合は、各ライブラリのDLLにパスが通っている必要があります。
最後にVisual Studio 2008のプロジェクトファイルを生成するために、 [Generate] を押下して下さい。
ソリューションファイルの生成が終了すれば、メッセージ出力部に “Generating done” と表示されて完了です。
エクスプローラ等で、コレオノイドをビルドするフォルダにVisual Studio のソリューションファイル(Choreonoid.sln
)が生成されていることを確認して下さい。
Visual Studio 2008を起動しソリューションを読み込む¶
CMake で Visual Studio のソリューションファイルが生成されていることが確認できれば、次はコレオノイドのビルドを行いますので、 Choreonoid.sln
をダブルクリックして下さい。Visual Studio が起動し、ソリューションファイルがオープンされていると思います。
もし Visual Studio が起動しない場合には、インストール時に何かあったかもしれませんので、Visual Studio を再インストールするか、関連付けを修正してみてください。あるいは、まず Visual Studio を起動し、その後 Visual Studio のメニューからソリューションファイルを読み込めばうまくいくかもしれません。
コレオノイドをコンパイル¶
ソリューションの読み込みが終われば、下図のような画面になります。 ここで、赤枠の部分を Release に変更して下さい。
次に、コレオノイドのビルドを実行します。メニューのプロジェクトをクリックすると下図のようなプルダウンメニューが出てきますので、赤枠にあるように ソリューションのビルド(B) を選択して下さい。 すると、コレオノイドのビルドが開始されます。 下部のメッセージウィンドウで最後に、 “0 失敗” と出てくればコンパイルは終了です。
コレオノイドをインストール¶
コレオノイドのビルドが終了したら、最後にインストールを実行します。 インストールは、下図にあるように、上段左の ソリューションエクスプローラ で INSTALL のプロジェクトの部分を右クリクするとメニューが表示されます。このメニューの最上部に ビルド(U) がありますので(下図の赤枠部分です)、それを選択して下さい。 正常に終了すれば、CMakeの時の CMAKE_INSTALL_PREFIX で指定されたフォルダの下に、コレオノイドのバイナリがコピーされます。 CMakeによるソリューションファイル生成時に INSTALL_DEPENDENCIES の項目にチェックを入れておけば、依存ライブラリのバイナリもコピーされます。
以上でコレオノイド のインストールは終了です。
インストール先の bin フォルダにある choreonoid.exe をダブルクリックすることで、コレオノイドが起動します。
Balancerプラグインについて¶
二足歩行ロボットを対象に動力学バランスを自動補正し、実機においても転倒しない動作の作成を支援する機能は、"Balancerプラグイン"が提供する機能となっています。現在のところ、このプラグインについてはソースを公開しておらず、一部のプラットフォーム向けにビルドされたバイナリのみをソースパッケージに含めて配布しています。
Windowsにおいては現在のところVisual C++ 2010 の32ビットバイナリ・リリースモードとしてビルドされたChoroenoid本体に対してこのバイナリが動作します。この環境においてBalancerプラグインを利用する際には、ソースのproprietary/BalancerPlugin以下の"CnoidBalancerPlugin.dll"を、コレオノイドのプラグインディレクトリ(インストール先の lib/choreonoid-x.x/ 以下)にコピーしてお使いください。
また、Balancerプラグインのライセンスはコレオノイド本体のライセンス(LGPL)ではありませんので、ご注意ください。使用条件は proprietary/BalancerPlugin/LICENSE でご確認ください。この条件を超える範囲の利用やソースコードに取得に関しては、産総研までお問い合わせください。