【编程问题记录】VS中ErrorLNK2019和ErrorLNK2001 如何解决。

在网上下载了别人的代码,在VS2013中编译,出现了很多次问题,大多是Error LNK2019和Error LNK2001,显示了很多的“无法解析的外部符号”,例如:

错误 18 error LNK2019: 无法解析的外部符号 "void __cdecl cv::error(int,class cv::String const &,char const *,char const *,int)" (?error@cv@@YAXHABVString@1@PBD1H@Z),该符号在函数 "public: unsigned char & __thiscall cv::Mat::at(int,int)" (??$at@E@Mat@cv@@QAEAAEHH@Z) 中被引用 D:\Master Study\study program\SGM\Test\gaussian.obj Test

错误 19 error LNK2001: 无法解析的外部符号 "void __cdecl cv::error(int,class cv::String const &,char const *,char const *,int)" (?error@cv@@YAXHABVString@1@PBD1H@Z) D:\Master Study\study program\SGM\Test\main.obj Test

#############

非常恶心,一直找不到原因,后来在这篇博客“https://blog.csdn.net/sinat_29547669/article/details/46757485”的评论中看到了解释,“opencv发布版本区分x86和x64,如果你引用的库是属于x64的,那么VS中的平台必须选择x64,如果选择win32就会报错了”,后来去查看配置管理器,发现确实是自己的配置管理器没更改,通过在配置管理器中将win32改成x64就可以解决问题了。


#在用opencv编程时,遇到“无法解译的外部错误”,可以试试更改配置管理器中的解决方案平台再编译测试一下。



你可能感兴趣的:(【编程问题记录】VS中ErrorLNK2019和ErrorLNK2001 如何解决。)