OPENCV 链接错误 - Win32 和 VS2012
OPENCV linking Error - Win32 & VS2012
我已经构建了 openCV 3.0.0 alpha 和 beta 版本。但是每次我 运行 我的项目我都会得到这个错误只针对 "imread" 函数:
error LNK2019: unresolved external symbol "class cv::Mat __cdecl cv::imread(class cv::String const &,int)" (?imread@cv@@YA?AVMat@1@ABVString@1@H@Z) referenced in function _main ...
这是我的代码:
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <stdlib.h>
#include <stdio.h>
using namespace cv;
int main()
{
Mat a=Mat::zeros(10,10,0);
Mat b;
b=imread("Mu.jpg");
imshow("s",a);
waitKey(1000);
}
当我删除 "imread" 功能时,它工作正常。构建和 运行s 没有错误并显示黑色小图像(来自 "A" Matrix)
我从头开始重新构建解决方案和 OpenCV,但仍然出现此错误。
我正在使用 VS2012,我已经在项目的 属性 sheet 中添加了包含和库路径。
有人可以帮忙吗?
这种未解决的外部符号链接器错误基本上是在编译器无法获取所声明函数的定义时出现的。
因此,请确保您已在代码中的某处定义了 imread("Mu.jpg"){}
,然后尝试对其进行编译。
检查您是否正确链接了库,如果您使用的是 opencv2.2,link 可能会有用。
imread
函数已移至 imgcodecs
库,因此您必须包含它:
对于 MSVC 用户: 添加 "opencv_imgcodecs300d.lib" 到 "configuration properties-> Linker->Input->Aditional Dependencies" 并包含“#include”
对于 Qt 用户: 对于 Qt IDE 用户添加 -lopencv_imgcodecs300d
或 -lopencv_imgcodecs300
你的个人资料
和 #include <opencv2/imgcodecs/imgcodecs.hpp>
到您的主文件
注意: 应更改库名称中的数字 300 以匹配使用的 OpenCV 版本。
我已经构建了 openCV 3.0.0 alpha 和 beta 版本。但是每次我 运行 我的项目我都会得到这个错误只针对 "imread" 函数:
error LNK2019: unresolved external symbol "class cv::Mat __cdecl cv::imread(class cv::String const &,int)" (?imread@cv@@YA?AVMat@1@ABVString@1@H@Z) referenced in function _main ...
这是我的代码:
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <stdlib.h>
#include <stdio.h>
using namespace cv;
int main()
{
Mat a=Mat::zeros(10,10,0);
Mat b;
b=imread("Mu.jpg");
imshow("s",a);
waitKey(1000);
}
当我删除 "imread" 功能时,它工作正常。构建和 运行s 没有错误并显示黑色小图像(来自 "A" Matrix) 我从头开始重新构建解决方案和 OpenCV,但仍然出现此错误。
我正在使用 VS2012,我已经在项目的 属性 sheet 中添加了包含和库路径。 有人可以帮忙吗?
这种未解决的外部符号链接器错误基本上是在编译器无法获取所声明函数的定义时出现的。
因此,请确保您已在代码中的某处定义了 imread("Mu.jpg"){}
,然后尝试对其进行编译。
检查您是否正确链接了库,如果您使用的是 opencv2.2,link 可能会有用。
imread
函数已移至 imgcodecs
库,因此您必须包含它:
对于 MSVC 用户: 添加 "opencv_imgcodecs300d.lib" 到 "configuration properties-> Linker->Input->Aditional Dependencies" 并包含“#include”
对于 Qt 用户: 对于 Qt IDE 用户添加 -lopencv_imgcodecs300d
或 -lopencv_imgcodecs300
你的个人资料
和 #include <opencv2/imgcodecs/imgcodecs.hpp>
到您的主文件
注意: 应更改库名称中的数字 300 以匹配使用的 OpenCV 版本。