f

アーカイブ

2013-12-01

cygwinでのwxPythonのインストールに失敗

ここ3日ほどcygwinでwxPythonをインストールしようと頑張っていた。matplotlibのbackendにWXとかWXAggというのがあって、これを使えばcygwinでも図をpyplot.show()で画面に直接出せるらしい。

 端末から以下のコマンドでバックグラウンドで実行しておけば一応画面上にもbackend: TKAggとかでも出せるが、いちいちバックグラウンドで実行しておくのが面倒。しかもバックグラウンドに出していないとimport matplotlib.pyplotの時点でエラー出るし。
startxwin &

(なお、backendの設定は ~/.matplotlib/matplotlibrcのbackendの値を設定すれば選択できる。)


そこでwxPythonをインストールしようとしていた。
結論としては失敗した。wxWidgetsのインストールまではうまくいったと思ったのだけど、wxPythonのインストールで失敗した。

環境
Cygwin 1.7.25
以下のコマンドで確認可能。
uname -r
1.7.25

使用したPythonのバージョン 2.7.3

安定版のwxPytyhon 2.8.12.1をソースからインストールする。wxPython2.9.5.0でも試したが、wxWidgetsのインストールの時点でアウトだった。
 easy_installや pipでも試したがなかった。
wxPythonのインストールの手順はwxWidgetsとwxPythonのインストールの2つに分かれている。
wxWidgetsのインストール
mkdir -p ~/local/src

cd ~/local/src

wget http://downloads.sourceforge.net/wxpython/wxPython-src-2.8.12.1.tar.bz2

tar jxf wxPython-src-2.8.12.1.tar.bz2

cd wxPython-src-2.8.12.1

mkdir bld

cd bld

../configure –build=i686-pc-cygwin –host=i686-w64-mingw32 –disable-baseevtloop –disable-epolloop –disable-selectloop –with-msw –disable-shared –enable-unicode –disable-precomp-headers –with-sdl –without-odbc –with-libmspack –enable-stl

make
make install

これでインストールできるはず。configureとmakeに結構時間かかる。
configureのオプションでは以下がキーだったようだ。

–without-odbc

–build=i686-pc-cygwin –host=i686-w64-mingw32

コンパイルできたらdllファイルをWindowsのシステムフォルダに保存する。これをしないとコンパイルしたプログラムを実行すると、はlib*.dllがみつかりませんというエラーが出る。

/usr/i686-w64-mingw32/sys-root/mingw/bin/lib*.dll

にdllがある。以下のコマンドでコピーしよう。

cp /usr/i686-w64-mingw32/sys-root/mingw/bin/lib*.dll /cygdrive/c/Windows/system/
  
wxWidgetsの動作確認

cd samples/minimal

make

./minimal.exe
wxPythonのインストール

cd ../wxPython 
python setup.py BUILD_GLCANVAS=0 BUILD_ACTIVEX=0 WX_CONFIG="wx-config --cxxflags" build_ext --inplace
 実行中にundefined refereceというエラー。原因不明で諦めた。
 素直にWindowsのexeファイルからインストールするのが楽でいいのかな…。
参考情報
http://www.kkaneko.com/rinkou/cygwin/wxwidgets.html
http://blog.livedoor.jp/k_yon/archives/51595089.html
wxPythonの公式:
http://www.wxpython.org/BUILD-2.8.html
wxWiki:
http://wiki.wxwidgets.org/Cygwin
GNU Radio:
http://gnuradio.org/redmine/projects/gnuradio/wiki/WxPythonCygwin
MSYS:
http://wiki.kicad.jp/%E3%83%93%E3%83%AB%E3%83%89%E6%96%B9%E6%B3%95#.E4.BE.9D.E5.AD.98.E3.83.A9.E3.82.A4.E3.83.96.E3.83.A9.E3.83.AAwxPython.E3.81.AEMSYS.E3.81.AB.E3.82.88.E3.82.8B.E3.83.93.E3.83.AB.E3.83.89

0 件のコメント:

コメントを投稿