
Ubuntu日本語フォーラム

ログインしていません。
githubからFreeCADソース( https://github.com/FreeCAD/FreeCAD_sf_master )のクローンをとってきてEdubuntu 12.04.1 x86_64でビルドしようとすると、
make[2]: *** No rule to make target `/usr/lib/i386-linux-gnu/libXmu.so', needed by `lib/libSMESH.so'. Stop. make[1]: *** [src/3rdParty/salomesmesh/CMakeFiles/SMESH.dir/all] Error 2 make: *** [all] Error 2
とリンクエラーがでてビルドが止まってしまうのです。
原因は、cmakeが吐き出したビルドルールに、
-L/usr/lib/i386-linux-gnu
なんていうリンクオプションが含まれているので、本来リンクすべきx86_64のライブラリパスよりも32ビットライブラリのパスが優先されてしまう。ということです。
インチキな方法ならば、cmekeで生成されたビルドルールより「-L/usr/lib/i386-linux-gnu」が含まれているファイルをgrepで探してsedで書き換えてしまうというのもありますが、あまり技術向上につながらないので、ちゃんとcmakeで正しいルールが生成されるようにしたいものです。
当方cmake は、ほぼ始めて目にする代物でして、どこいじったらよいか皆目(検討|見当)がつきませんでして・・・
なにか(特にcmakeの挙動やデバグのポイントなどについて)、知っている方は(回答|解説)のほどよろしくお願いします。
オフライン
FreeCADは、パッケージがあるみたいですが、自分でビルドする必要があるのですか?
(リリース版に加え、ppa には、開発版とデイリービルド版)
オフライン