ODEのインストール時にグラフィック(X11)で問題が起きる場合は
ODE (Open Dynamics Engine) を Linux (ここでは Ubuntu) にインストールするときに,以下のようなエラーが出る場合の対処法.
x11.cpp:108: error: undefined reference to 'XOpenDisplay' x11.cpp:123: error: undefined reference to 'XCreateColormap' ...
ODE をインストール (make) しているときに,以下のようなエラーが出ることがある.
x11.cpp:108: error: undefined reference to 'XOpenDisplay' x11.cpp:123: error: undefined reference to 'XCreateColormap' x11.cpp:143: error: undefined reference to 'XCreateWindow' x11.cpp:155: error: undefined reference to 'XSetWMName' x11.cpp:158: error: undefined reference to 'XInternAtom' x11.cpp:159: error: undefined reference to 'XInternAtom' x11.cpp:160: error: undefined reference to 'XSetWMProtocols' x11.cpp:164: error: undefined reference to 'XMapWindow' x11.cpp:165: error: undefined reference to 'XSync' x11.cpp:370: error: undefined reference to 'XPending' x11.cpp:371: error: undefined reference to 'XNextEvent' x11.cpp:380: error: undefined reference to 'XSync' x11.cpp:172: error: undefined reference to 'XDestroyWindow' x11.cpp:173: error: undefined reference to 'XSync' x11.cpp:174: error: undefined reference to 'XCloseDisplay' x11.cpp:222: error: undefined reference to 'XLookupString' x11.cpp:212: error: undefined reference to 'XQueryPointer' x11.cpp:308: error: undefined reference to 'XGetImage'
これは,libX11.so がリンクされるように設定されていないことが原因で(なぜかは不明),リンカオプションに -lX11 を付けるように configure のオプションを設定すれば解決できる.
具体的には,X_EXTRA_LIBS に -lX11 を設定して configure を実行すればよい.
bash だと,以下を実行する:
X_EXTRA_LIBS=-lX11 ./configure --enable-double-precision
なお,--enable-double-precision などはお好みで.
ちなみに,OpenGL のインストール自体は libglut3, libglut3-dev (or freeglut3, freeglut3-dev) パッケージをいれておけばよいようだ.