読者です 読者をやめる 読者になる 読者になる

non vorrei lavorare

ブログ名の通りです。javascript three.js mruby rust OCaml golang julialang blender

wxMaximaをMavericksでビルド出来た

パソコン・インターネット
先週は次男の便秘が解消したと思ったら、長男がまた耳が痛いと、クスリは飲ませており、回復に向かっていると思っていたのですが、また少し赤く腫れているとの診断でした。kjunichiです。

wxWdigetsの最新の3.0.0リリース版で出来た

2.9.x系はMavericks環境ではCursorが未定義と怒られ、ビルドできなかった。

基本的には、wxMaximaのページの方法に沿って進める。

wxWidgetsビルド時

buildディレクトリは3.0.0では用意されているので、mkdirは不要

cd wxWigets-3.0.0
cd build
CXXFLAGS="-stdlib=libstdc++" LIBS="-lstdc++" ../configure  --disable-shared --enable-unicode
make

wxMaxima本体

cd ../..
git clone https://github.com/andrejv/wxmaxima.git
cd wxmaxima
CXXFLAGS="-stdlib=libstdc++" LIBS="-lstdc++" ./configure --with-wx-config=../wxWidgets-3.0.0/build/lib/wx/config
make

Homebrewの場合、msgfmtがkeg扱いなので、一時的に/usr/local/Celler/gettext-xxx/binをPATHに追加して 以降の作業を続ける。

cd locales
make allmo
cd ..
make wxMaxima.app

これで、wxMaixmaのソースディレクトリ直下にwxMaixma.appが作成される。

まとめ

今回はMavericks環境でwxMaximaの最新版を無事ビルドすること出来ました。しかも 結果的にwxMaximaで利用しているwxWidgetsが最新版の物でビルド出来ています。

Mavericksから2つあるC++標準ライブラリのlibc++を使うようになり、 「-stdlib=libstdc++」のオプションを指定することで、以前のデフォルとのC++標準ライブラリ を使うことが出来ることが分かりました。

ちなみに、wxWidgetsはconfigure時に-stdlib=libc++を指定すると、エラーとなり ビルドできませんでした。

Maxima本体

今回はwxMaximaのビルトで満足したため、Maxima本体はwxMaximaのページより バイナリーをダウンロードすると入っているMaxima.appを利用しました。 また、gnuplot.appはHomebrew版の方が新しかったため、こちらは入れません。 jsMathフォントはポチポチ入れました。

実は、Homebrew版のwxMaximaで一部フォントが表示されていないので、wxMaximaの 最新版を入れてみようとなったのが今回の記事のきっかけなのでした。

関連リンク

関連記事