Windows下FFTW庫的安裝

2021-07-29 08:08:51 字數 2830 閱讀 6448

fftw

是用來計算一維或者多維的離散傅利葉變換,輸入可以為實數序列也可以為複數序列的c語言的子函式庫,fftw是免費軟體,是作為fft函式庫的各種應用的上佳選擇。

32-bit version: fftw-3.2.2.pl1-dll32.zip (1.8mb)

64-bit version: fftw-3.2.2-dll64.zip (2.2mb)

2.安裝lib.exe

其實這是vc自帶的工具,在vc6.0和vs05中都有的,我機器上安裝了vc6.0及vs2005,lib.exe的路徑如下:

d:\program files\microsoft visual studio\vc98\bin (vc6.0的目錄)

d:\program files\microsoft visual studio 8\vc\bin   (vs2005的目錄)

開啟windows的命令提示行視窗(cmd視窗),改變當前目錄到d:\program files\microsoft visual studio 8\vc\bin(使用cd命令)

把\vs安裝目錄\common7\ide 裡面的mspdb80.dll,mspdbcore.dll,mspdbsrv.exe,msobj80.dll 複製到上面的bin資料夾裡,把libfftw3-3.def,libfftw3f-3.def,libfftw3l-3.def也拷到bin下面。

c:\documents and settings\admin>cd d:\program files\microsoft visual studio\vc98

\bin

c:\documents and settings\admin>d:

usage: lib [options] [files]

options:

/convert

/debugtype:cv

/def[:filename]

/export:symbol

/extract:membername

/include:symbol

/libpath:dir

/link50compat

/list[:filename]

/machine:

/name:filename

/nodefaultlib[:library]

/nologo

/out:filename

/remove:membername

/subsystem:[,#[.##]]

/verbose

d:\program files\microsoft visual studio\vc98\bin>

這時候你的lib命令就可以使用了。

3.在cmd進入上面提到的bin目錄,並執行

lib /machine:i386 /def:libfftw3-3.def

lib /machine:i386 /def:libfftw3f-3.def

lib /machine:i386 /def:libfftw3l-3.def

4.將libfftw3f-3.dll libfftw3-3.dll libfftw3l-3.dll放入windows/system32中,然後將生成的庫檔案libfftw3-3.lib libfftw3f-3.lib libfftw3l-3.lib放入vc中的lib資料夾,把fftw3.h放入include資料夾。

5.在你新建工程的時候,記得#include」fftw3.h「,然後設定引數:」專案「==>"專案屬性"==>"配置屬性"==>"鏈結器"==>"輸入"==>"附加依賴項",將以下三項新增進去:

libfftw3-3.lib

libfftw3f-3.lib

libfftw3l-3.lib

6.完成。

7.下面是從別的部落格上找到的乙個測試**:

[html]view plain

copy

#include "fftw3.h"  

int main()  

printf("\n");  p=

fftw_plan_dft_1d

(n,in,out, fftw_forward, fftw_estimate);  

fftw_execute(p); /* repeat as needed*/  

for(j= 

0;j 

<

n;j++)  

printf("\n");  

fftw_destroy_plan(p);  

fftw_free(in);   

fftw_free(out);  

return 0;  

}  

[html]view plain

copy

#include "fftw3.h"  

int main()  

printf("\n");  p=

fftw_plan_dft_1d

(n,in,out, fftw_forward, fftw_estimate);  

fftw_execute(p); /* repeat as needed*/  

for(j= 0

;j <

n;j++)  

printf("\n");  

fftw_destroy_plan(p);  

fftw_free(in);   

fftw_free(out);  

return 0;  

}  

結果如下:

fftw在windows下的配置問題

fftw在mac下參照官網很容易配置,但是windows下出現了問題。接下來開啟vs 我的是vs2015 的開發者cmd,官網是執行以下命令 lib def libfftw3 3.def lib def libfftw3f 3.def lib def libfftw3l 3.def 但是出現了以下錯...

windows Qt下使用fftw庫

環境 win7 qt 5.1.0 正如官網所述 需要在cmd下執行以下命令生成lib庫 lib def libfftw3 3.def lib def libfftw3f 3.def lib def libfftw3l 3.def 生成 libfftw3 3.lib libfftw3 3f.lib l...

Windows下VS2015配置FFTW3庫

前些天重灌了我的電腦系統,這也意味著我還要重灌我電腦中的很多軟體。但有些軟體不是簡單的用安裝包傻瓜式的一路狂點下一步就可以完成的,還需要進行相應的配置。例如進行快速傅利葉變換所需要用到的fftw庫等。在配置fftw庫的時候參考的了網上的很多資料,各家所雲不盡相同,走了一些彎路,在這裡記錄下我親測可行...