トップ «前の日記(2011/03/10(Thu)) 最新 次の日記(2011/03/23(Wed))»
【ソース+水=麦茶色の何か】

半期 四半期 全カテゴリ

今日の一言


2011/03/18(Fri) このHPっていつまで残るのかね? [長年日記] 22:30現在 7℃

_ [C++][Debian][FC][Linux][Ubuntu][研究関係][雑記]fftwのインストール

参考:

 http://wwww.vis.ne.jp/mt/archives/000680.html
 http://www.db.is.kyushu-u.ac.jp/rinkou/linux/fftw3linux.html

ここ(http://www.fftw.org/)からソースをDLし、解凍。

で、configureで次の操作を行う。とりあえず、いずれかを選んで実行。

$ ./configure --enable-threads --enable-float --enable-sse
$ ./configure --enable-threads --enable-double --enable-float --enable-sse
 $ ./configure --enable-threads

単精度の浮動小数点数で計算したい場合は「--enable-float」を設定する. 倍精度での浮動小数点数で計算したい場合は「--enable-long-double」を設定する。デフォルトはdouble。

「--enable-float」のときは,「--enable-sse」を付けると高速化が期待できる(SSE 付きのプロセッサのみ)

で、

 $ make
 $ make check
 $ sudo make install
 $ sudo ldconfig

普通に--enable-floatオプション有りと無しでconfigure、make、make installすると、libfftw3、libfftw3fの2つができる。前者がgccで-lfftw3として使うdouble版、後者がgccで-lfftw3fとして使うfloat版。

必要に応じて選択する。両方入れるのもOK。

ちなみに、コンパイルは以下のようにすればいい。

$ gcc -lm -lfftw3f(floatの時。double版はlfftw3) -o hoge hoge.c

なお、libfftw3とlibfftw3fで、関数名も「fftw_ホゲホゲ」と「fftwf_ホゲホゲ」みたいに異なるので注意!

※ヘッダも「fftw3.h」と「fftw3f.h」で別ものです。

使い方はこのへん(http://www32.atwiki.jp/amaeda/pages/16.html)とかみれば分かるはず。

以上!