LoginSignup
0
0

More than 5 years have passed since last update.

pyfftw 0.10.4を window にインストールする

Posted at

pyfftwとは

fftwのpythonラッパー.Scipyより速いとか.

普通に落としてきた方が早そう

あとから気づいたが,whlが普通に落ちているので,それを環境に合わせてダウンロードすると普通にうまくいった.
https://bintray.com/hgomersall/generic/PyFFTW-development-builds/view#
からバージョンを選んで,Filesから自分の環境(pythonのバージョン,64bit/32bit)に合わせて適当にダウンロードしよう.

自前ビルド

とはいってもfftwのdllは落としてくることを想定.

FFTWのDLLを手に入れる

http://www.fftw.org/install/windows.html
から自分の環境に合わせてプレビルド済みのdllを落としてくる.

FFTWの静的ライブラリを生成

上のサイトのドキュメントに書いてあるように,libファイルは別途自前で生成しなければならない
visual Studioを使う場合.
libにパスが通ってない場合があるのでその場合,適宜パスを追加する.
自分の場合はC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\binにパスを通す必要があった.

lib /def:libfftw3-3.def
lib /def:libfftw3f-3.def
lib /def:libfftw3l-3.def

のようにして静的ライブラリを生成.64bitマシンの場合は(普通そうだと思うがlib /machine:x64 /def:libfftw3l-3.def
のようにする.

配置

pip download pyfftw
でソースコードを落としてくる.tar.xzなので

tar -zxvf pyFFTW-0.10.4.tar.gz
などとして,解凍.(最近のwindowsではtarコマンドが使える.https://kledgeb.blogspot.com/2017/12/windows-14-windowscurltar.html)
pyfftwの中身から必要なファイル(dllやlibファイルなど)をpyfftwファイル配下に配置

微妙に修正

このままだとビルドが通らなかった
https://github.com/pyFFTW/pyFFTW/issues/228
これに従ってpyFFTW.egg-info/SOURCES.txtを修正

/home/whg/Projects/github/pyFFTW/pyfftw/pyfftw.c
/home/whg/Projects/github/pyFFTW/pyfftw/pyfftw.pyx
/home/whg21/Projects/github/pyFFTW/pyfftw/pyfftw.c
/home/whg21/Projects/github/pyFFTW/pyfftw/pyfftw.pyx

pyfftw/pyfftw.c
pyfftw/pyfftw.pyx
pyfftw/pyfftw.c
pyfftw/pyfftw.pyx

に修正する.

python setup.py

あとはpython setup.py installを最上位ディレクトリでやったら入った.

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0