fftw庫的使用

來源:互聯網
上載者:User

從網址http://www.fftw.org/install/windows.html上獲得FFTW的windows
dll先行編譯版本
(32-bit version:fftw-3.3-dll32.zip (1.8MB));<
xmlnamespace prefix ="o" ns ="urn:schemas-microsoft-com:office:office" />

2 安裝lib.exe

開啟Windows的命令提示行視窗(CMD視窗),改變目前的目錄到L:\Program
Files\Microsoft Visual Studio 10.0\VC\Bin(使用cd命令)

然後輸入lib.exe(即運行),會有如下提示:

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

注意:vs2010運行lib.exe時會有如下錯誤:

The program can't start because mspdb100.dll is missing from your computer. 

Try reinstalling the program to fix this problem.

解決辦法:

Vs2010的mspdb100.dll藏在Microsoft
Visual Studio 10.0\Common7\IDE中,將該路徑加入環境變數path中即可:

path=%path%;C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE

更好解決方案是在命令列中運行vsvars32.bat:

"C:\Program Files\Microsoft Visual Studio 10.0\Common7\Tools\vsvars32.bat"

3 對下載到的先行編譯檔案編譯

  將下載到的fftw-3.2.2.pl1-dll32.zip檔案解壓縮,然後將其中的libfftw3-3,libfftw3f-3

和libfftw3l-3拷到lib.exe下,同樣在保證目前的目錄為lib.exe所在目錄的前提下,在命令

提示行視窗中輸入如下命令:

< xmlnamespace prefix ="v" ns ="urn:schemas-microsoft-com:vml" />
    然後就會在lib.exe所在目錄下看到,

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檔案夾。

.在你建立工程的時候,記得#include”fftw3.h“,然後設定參數:”項目“==>"項目屬性"==>"配置屬性"==>"連結器"==>"輸入"==>"附加依賴項",將以下三項添加進去:

   libfftw3-3.lib

   libfftw3f-3.lib

   libfftw3l-3.lib

完成。

5 下面是從別的部落格上找到的一個測試代碼:

#include "fftw3.h"
int main()
{
    fftw_complex *in, *out;
    fftw_plan p;
    int N= 8;
    int i;
    int j;
    in = (fftw_complex*) fftw_malloc(sizeof(fftw_complex) * N);
    out = (fftw_complex*) fftw_malloc(sizeof(fftw_complex) * N);
    for( i=0; i < N; i++)
    {
        in[i][0] = 1.0;
        in[i][1] = 0.0;
        printf("%6.2f ",in[i][0]);
    }
    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("%6.2f ",out[j][0]);
    }
    printf("\n");
    fftw_destroy_plan(p);
    fftw_free(in); 
    fftw_free(out);
    return 0;
}

結果如下:

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.