一、出错:LNK2019无法识别的外部符号
如上提到的那样,在我的情况下,出现“LNK2019无法识别的外部符号”这样的报错,主要是因为我在程序中引用了fftw3.h的头文件,但是没有配置对应的FFTW库,下面是我借鉴网上搜到的方法亲身试验成功的一种方法:
1、登陆http://www.fftw.org/install/windows.html,下载 32-bit version: fftw-3.3.4-dll32.zip (2.4MB)。
2、把fftw-3.3.4-dll32.zip解压到某一文件夹,例如D:\fftw
3、打开VS命令提示(C:\Program Files\Microsoft Visual Studio 10.0\VC\vcvarsall.bat),然后把文件路径定位到D:\fftw。
4、输入命令:
lib /def:libfftw3-3.def
lib /def:libfftw3f-3.def
lib /def:libfftw3l-3.def
结果,D:\fftw中会生成对应的lib文件:
libfftw3-3.lib
libfftw3f-3.lib
libfftw3l-3.lib
5、在VS2010中,
项目->属性->C/C++->附加包含目录,加上D:\fftw
项目->属性->链接器->常规->附加库目录,加上D:\fftw
项目->属性->链接器->输入->附加依赖项,加上libfftw3-3.lib、libfftw3f-3.lib、libfftw3l-3.lib
6、把D:\fftw中的libfftw3-3.dll、libfftw3f-3.dll、libfftw3l-3.dll
三个dll文件复制到我的项目文件夹里(有.vcxproj文件的那个文件夹)。
二、出错:Cannot find or open the PDB file
在网上找到了方法,一次就搞定了:
1、在VS2010中,工具->选项->调试->符号,选择Microsoft符号服务器,选择一个缓存路径,然后确认。
2、编译运行任何一个小程序(可能会有点慢)。
3、在VS2010中,工具->选项->调试->符号,去掉Microsoft符号服务器,确认。