Visual studio 2010 将opencv库添加到windows窗体应用程序时出现链接器错误
我试图通过GUI或windows窗体应用程序获取的图像来执行opencv操作 因此,我将所有opencv库添加到应用程序中。它在不包含opencv库的情况下运行得非常好,但在包含opencv库的情况下就不是这样了 当我包括opencv库时(#包括“opencv\cv.h”),如下所示:Visual studio 2010 将opencv库添加到windows窗体应用程序时出现链接器错误,visual-studio-2010,opencv,visual-c++,Visual Studio 2010,Opencv,Visual C++,我试图通过GUI或windows窗体应用程序获取的图像来执行opencv操作 因此,我将所有opencv库添加到应用程序中。它在不包含opencv库的情况下运行得非常好,但在包含opencv库的情况下就不是这样了 当我包括opencv库时(#包括“opencv\cv.h”),如下所示: //MyForm.h #pragma once #include"opencv\cv.h" namespace Project3 { using namespace System; using namespac
//MyForm.h
#pragma once
#include"opencv\cv.h"
namespace Project3 {
using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
..... }
然后编译器抛出更多的错误,所有这些错误都表示为未解析的外部错误
Error 14 error LNK1120: 12 unresolved externals
如果我将opencv库添加到GUI的方法不兼容,请推荐一些替代方法
#include"opencv\cv.h"
并不是包含OpenCV头文件的正确方法。如果您查看一些教程(),就会发现您只需要包含所需的头文件
因此,对于您的特定实例,您最终将使用图像处理代码,我建议您将代码编辑为:
//MyForm.h
#pragma once
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
namespace Project3 {
using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
..... }
//MyForm.h
#布拉格语一次
#包括
#包括
#包括
命名空间项目3{
使用名称空间系统;
使用名称空间System::ComponentModel;
使用名称空间系统::集合;
..... }
我找到了另一个解决方案。问题是,对于标题
#include<opencv\cv.h>
#包括
我没有将库opencv_objdetect248.lib添加到链接器中,这是我不希望需要的。当然,我已经向链接器添加了其他库,但不是这个库。这就是为什么会出现大约12个错误。添加后,生成成功。尝试#包含#包含@GPPK:它们正在工作。我想,除了cv.h之外,所有其他opencv都在工作。但我们需要cv.h库来进行图像处理。对吗?除了上面的教程,请看一下,你链接了哪些opencv库。(您可能至少需要opencv_core249.lib、opencv_imgproc249.lib、opencv_highgui249.lib^^^^这是一个头文件(编译),而不是一个库(链接)。错误是缺少lib,而不是错误的头。