Linux下FFTW庫的安裝
FFTW(the Fastest Fourier Transform in the West)庫是由MIT(Massachusetts Institute of Technology)的Matteo Frigo和Steven G. Johnson開發的,用於一維和多維實數或複數的離散傅里葉變換。
1. 下載 fftw-3_2_2_tar.gz (www.fftw.org, or www.rpmfind.net )
2. tar zxvf fftw-3_2_2_tar.gz 展開壓縮文件
3. 在Linux中安裝FFTW:
總共需要兩次安裝
第一次安裝就按下面的 a 配置就行
第二次安裝時爲了 生成libfftwf.so的庫文件 以f結尾的代表可以的數據類型是 float 加上 --enable-float 第一次安裝的時候不能加這個選項 否則會出錯
a.
./configure --enable-type-prefix --prefix=/usr/local/fftw --with-gcc --disable-fortran --enable-i386-hacks --enable-shared=yes
其中,
--enable-type-prefix 參數是爲了同時使用single precision(單精度)和double precision(雙精度),如果不使用它,最後只有以rfftw開頭的文件被安裝(real fftw);
--prefix= 參數是設定安裝目錄;
--with-gcc 使用gcc編譯器;
--disable-fortran 參數爲了不包含Fortran調用的機制;
--enable-i386-hacks 爲Pentium和x86以後的CPU優化gcc的編譯速度。
--enable-shared=yes 爲了生成動態庫.so文件 否則生成的都是.a 文件 沒法編譯 (我就卡在這裏)
第一次安裝
1.
make 編譯
2.
make install 安裝,這一次安裝完後,在安裝目錄中存在以dfftw和drfftw開頭文件,但沒有sfftw開頭的文件
3.
make clean 還需要安裝一次,先清除
第二次安裝
1.
./configure --enable-float --enable-type-prefix --prefix=/usr/local/fftw --with-gcc --disable-fortran --enable-i386-hacks --enable-shared=yes
其中,--enable-float 爲了生成單精度計算的頭文件和庫文件,即以sfftw開頭的文件。
2.
make 重新編譯
3.
make install 再一次安裝,安裝完後,目錄中便會同時存在sfftw和dfftw開頭的文件(用於複數函數/complex function的FFT變換)和srfftw與drfftw開頭的文件(用於實數函數的FFT變換)