错误LNK2019:未解析的外部符号_打开CV程序

时间:2015-08-05 12:29:56

标签: opencv lnk2019

我正在学习开放式简历,同样我正在尝试一些程序。 我指的是这个链接。 http://docs.opencv.org/modules/contrib/doc/facerec/tutorial/facerec_gender_classification.html

我正在使用visual studio 10来运行相同的操作,我觉得某个地方我搞砸了一些配置。 我在几个以上的程序中遇到了同样的问题(从同一来源选择),

我得到的错误如下: -

  

1> main.obj:错误LNK2019:未解析的外部符号“int __cdecl cv :: waitKey(int)”(?waitKey @ cv @@ YAHH @ Z)在函数__catch $ _main $ 0中引用

     

1> main.obj:错误LNK2019:未解析的外部符号“class cv :: Mat __cdecl cv :: subspaceReconstruct(class cv :: _ InputArray const&,class cv :: _ InputArray const&,class cv :: _ InputArray const&)“(?subspaceReconstruct @ cv @@ YA?AVMat @ 1 @ ABV_InputArray @ 1 @ 00 @ Z)在函数__catch $ _main $ 0中引用

.....(更多此类未解决的外部符号错误)

  

1> main.obj:错误LNK2001:未解析的外部符号“public:virtual bool __thiscall cv :: _ InputArray :: empty(void)const”(?empty @ _InputArray @ cv @@ UBE_NXZ)

     

1> c:\ users \ isenses \ documents \ visual studio 2010 \ Projects \ gender_classification \ Debug \ gender_classification.exe:致命错误LNK1120:37未解析的外部

     

1>

     

1>构建失败。

     

1>时间流逝00:00:00.36

     

==========构建:0成功,1失败,0最新,0跳过==========

我的项目属性如下: -

属性 - >配置属性 - >调试 - >命令参数 - > C:\ Users \ isenses \ Documents \ Visual Studio 2010 \ Projects \ gender_classification \ csv.txt

属性 - >配置属性 - > VC ++目录 - >包含目录 - >(添加C:\ Program Files(x86)\ Microsoft Visual Studio 10.0 \ VC \ lib   &安培;
C:\ openCV_2.4 \的OpenCV \建立\ 86 \ VC10 \ lib中)

C / C ++ - > general->其他包含目录(添加包含openCV的路径,即: - C:\ openCV_2.4 \的OpenCV \构建

链接器>常规--- 启用增量链接=否

其他库目录= C:\ Program Files%28x86%29 \ Microsoft Visual Studio 10.0 \ VC \ lib

C:\ openCV_2.4 \的OpenCV \建立\ 86 \ VC10

linker-> System --- SubSystem = / SUBSYSTEM:CONSOLE

链接器>输入--- 额外的依赖= wsock32.lib opencv_contrib2411d.lib

opencv_calib3d2411d.lib

opencv_ml2411d.lib

opencv_objdetect2411d.lib

谢谢。

2 个答案:

答案 0 :(得分:1)

感谢@miki,我能够成功构建文件。 我的问题的解决方案是: -

  1. 在properties-> linker-> input。
  2. 中添加适当的附加依赖项
  3. 在Windows环境变量中添加库路径。
  4. 我没有像@miki所指出的那样使用适当的额​​外依赖关系,并引用他的话“你也必须链接opencv_coreXXX,opencv_highguiXXX,opencv_imgprocXXX等......(如果在调试中使用尾随”d“)你的链接器 - >输入---附加依赖“
  5. 再次感谢

答案 1 :(得分:1)

我想添加一个答案,因为我觉得opencv网站上的文档需要更新。我按照教程,无法链接库。经过多次排列后,我决定查看.lib文件。我的问题很简单。 opencv教程中的lib文件不完整。特别是我的lib目录包括另外三个lib文件。我向visual studio链接器添加了三个额外的lib文件,解决了外部符号问题。 我不确定为什么会这样,因为我只是尝试使用核心模块中包含的功能。无论如何,希望这会有所帮助。

我正在使用opencv 3和visual studio 2017。