主要是记录一下在 Qt中安装FFTW库的问题。
1.下载FFTW库:FFTW Installation on Windowshttps://www.fftw.org/install/windows.html
开始我下载的是32位的版本,在将经过编译后生成的lib文件链接到Qt中时,编译器报错"skipping incompatible"应该是不兼容32位的原因。后续下载安装64位的成功了。
Qt中使用的编译器如下:
2.编译生成lib文件
我使用的是visio stdio2022自带的bin.exe进行编译,分为x64和x86,因为我下载的FFT库文件为64位的,所以我选用x64版本进行编译。用管理员权限打开cmd,找到bin.exe所在文件夹。
输入需要编译的def文件的路径
创建成功,生成的lib文件与lib.exe文件在相同的目录下可以找到。
3.导入到Qt中
可新建文件夹Exe和ExeRelease,将所需的dll文件和lib文件存放到其中,方便后续在Qt中的pro文件中添加路径
在pro文件中添加如下代码:
win32:CONFIG(release, debug|release): LIBS += -/L$$OUT_PWD/../ExeRelease/ -llibfftw3-3 //添加lib文件,有三种,这里添加一种即可
else:win32:CONFIG(debug, debug|release): LIBS += -L$$OUT_PWD/../Exe/ -llibfftw3-3
INCLUDEPATH += $$PWD/include/fftw3 //头文件路径,可在工程文件中新建include文件夹,将所需的头文件放在里面
INCLUDEPATH += $$PWD/../Exe
DEPENDPATH += $$PWD/../Exe
至此完成在Qt中FFT库的导入。