我最近在visual 2008中使用opencv和c++做了一个项目当我在调试模式下构建项目时-我没有遇到任何问题-但是当我在发布模式下构建它时,我得到以下错误:
1>test.obj : error LNK2001: unresolved external symbol _cvHaarDetectObjects
1>test.obj : error LNK2001: unresolved external symbol _cvCvtColor
1>test.obj : error LNK2001: unresolved external symbol _cvCreateImage
1>test.obj : error LNK2001: unresolved external symbol _cvDestroyWindow
1>test.obj : error LNK2001: unresolved external symbol _cvWaitKey
1>test.obj : error LNK2001: unresolved external symbol _cvGetSize
1>test.obj : error LNK2001: unresolved external symbol _cvReleaseCapture
1>test.obj : error LNK2001: unresolved external symbol _cvCreateMemStorage
1>test.obj : error LNK2001: unresolved external symbol _cvClone
1>test.obj : error LNK2001: unresolved external symbol _cvNamedWindow
1>test.obj : error LNK2001: unresolved external symbol _cvQueryFrame
1>test.obj : error LNK2001: unresolved external symbol _cvLoad
1>test.obj : error LNK2001: unresolved external symbol _cvRectangle
1>test.obj : error LNK2001: unresolved external symbol _cvCreateCameraCapture
1>test.obj : error LNK2001: unresolved external symbol _cvGetSeqElem
1>test.obj : error LNK2001: unresolved external symbol _cvShowImage
检查发布配置中的链接器->输入->附加依赖项设置;毫无疑问,你忘记了包括OpenCV库。只需从Debug配置中复制粘贴它们,但不要忘记删除d
后缀。
。cv210.lib
:释放模式cv210d.lib
:调试模式
您在发布版本中包含的库与在调试版本中包含的库不同。"未解析的外部符号"意味着它无法找到你引用的函数的实现。
当您将附加依赖项设置为调试模式而不是发布模式时,会发生这种情况。