Mac で ODE (Open Dynamics Engine) を使う。
2014/11/30
ODE (Open Dynamics Engine) のライブラリをダウンロードしてサンプルをビルド・実行する手順。
- まず http://www.ode.org/ から最新の ode-0.13.tar.bz2 をダウンロード。
-
次に展開された ode-0.13 ディレクトリにて、INSTALL.txt の指示に沿ってインストールする。
ターミナルを起動して、以下のコマンドを順次実行する。
$ ./configure $ make $ make install
make で warning が出るし、make install では error も出るが、 ode/demo/ 以下にデモアプリ(exec)が出来ており実行できた。 -
次に、自作プログラムをコンパイル/リンクしてみる。 Mac で ode の自作プログラムをコンパイル/リンクする方法をネットで調べるといくつか出てくるが、 少し情報が古いようで OS X 10.9 (Mavericks) ではリンク時に library not found for -lX11 のエラーになる。 はまったが解決策は「X11 library は使わず、代わりに GLUT framework を使う」こと。以下のようなコマンドでコンパイル/リンクできた。 (自作プログラムは ode-0.13 と同じディレクトリに置く場合)
g++ -I -O2 -Wall -g -c hello.cpp -I./ode-0.13/include -DdTRIMESH_ENABLED g++ -I -O2 -Wall -g -o hello hello.o -L./ode-0.13/ode/src/.libs -L./ode-0.13/drawstuff/src/.libs -lode -ldrawstuff -framework Carbon -framework AGL -framework OpenGL -framework GLUT
-
最後に Xcode でビルドできるようにしてみる。
- OS X Application - Command Line Tool としてプロジェクトを作成。
- プロジェクトに hello.cpp ファイルを追加。
-
プロジェクトを下記のように設定。
- TARGETS - Build Settings - Search Paths - Header Search Paths
- ode-0.13/include
- TARGETS - Build Settings - Search Paths - Library Search Paths
- ode-0.13/ode/src/.libs
- ode-0.13/drawstuff/src/.libs
- TARGETS - Build Settings - Linking - Other Linker Flags
- -lode -ldrawstuff
- TARGETS - Build Phases - Link Binary with Libraries
- AGL.framework OpenGL.framework GLUT.framework