我现在正在使用OpenCV 2.3.1和MS Visual Studio 2010工作一段时间,并在多台PC上进行设置。过去我在我的一台PC上安装了openCV 2.1.0。我的问题是,在已安装openCV 2.1.0的PC上,cxcore210.lib和cv210.lib在Linker>>中列为继承值。输入>>附加依赖
问题在于,当我尝试使用OpenCV 2.3.1在这台PC上构建一个程序时(我已经正确地设置了所有连接器和东西并且在我的“干净”PC上它工作正常)它一直要求这些2 lib文件。当然我可以再次安装OpenCV 2.1.0并链接到这些文件,但这不是我想要的,因为我正在使用OpenCV 2.3.1
我已经尝试重新安装我的Visual Studio,但这也没有解决问题。此外,还会卸载OpenCV 2.1.0并删除路径设置。有谁知道为什么它一直在寻找cxcore210.lib和cv210.lib作为继承的值,我怎么能摆脱它们?
答案 0 :(得分:0)
那是因为你的项目仍然认为你正在使用OpenCV 2.1 。您需要转到Linker > Input > Additional Dependencies
下的项目设置,并将cxcore210.lib cv210.lib
替换为各自的v2.3.1对应项,其中包括:
opencv_core231.lib opencv_highgui231.lib
您可能需要添加其他库,例如opencv_imgproc231.lib
abd或其他库,具体取决于您的程序在OpenCV中使用的内容。这些版本之间发生了很多变化。
此外,如果您将OpenCV 2.3.1安装在与用于v2.1的目录不同的目录中,则必须在项目设置中调整更多内容:
C/C++ > General > Additional Include Directories
Linker > General > Additional Library Directories
This tutorial逐步显示了如何配置这些内容以及更多内容。
答案 1 :(得分:0)
嗯,现在似乎工作,我想我找到了一些解决方法。我去了Linker>输入>其他依赖项并取消选中“从父项目或项目默认值继承”框。两个lib文件都保持列为继承值,但至少我可以正确地构建和运行项目而不会出现错误,告诉我指向cxcore210.lib cv210.lib