【发布时间】:2016-11-19 04:51:28
【问题描述】:
我在我的 Eclipse 上配置 openCV,无法运行 openCV 教程中给出的简单示例,我按照here 中的确切步骤操作
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace cv;
int main( int argc, char** argv )
{
Mat image;
image = imread( argv[1], 1 );
if( argc != 2 || !image.data )
{
printf( "No image data \n" );
return -1;
}
namedWindow( "Display Image", WINDOW_AUTOSIZE );
imshow( "Display Image", image );
waitKey(0);
return 0;
}
它给了我以下错误:
找不到 -lopencv_contrib C/C++ 问题
make: *** [projectname] 错误 1 C/C++ 问题
目标“项目名称”的配方失败生成文件 /faa/调试行
45 C/C++问题
当我删除 opencv_contrib 时,错误变为:
- ./src/projectname.o: 未定义的符号引用 '_ZN2cv6imreadERKNS_6StringEi' C/C++ 问题
- make: *** [projectname] 错误 1 C/C++ 问题
- recipe for target 'projectname' makefile /projectname/Debug line 45 C/C++ 问题失败
【问题讨论】:
-
您的问题在于您的项目设置而不是代码。
-
@drescherjm 我为设置添加了快照。
-
@Misaki -- 是
/usr/local/lib中的那个库吗?问题是为什么您甚至要链接大多数这些库,因为您显示的源代码没有使用这些模块中的任何内容。 -
@DanMašek -- 我在终端中输入了
pkg-config --cflags opencv,输出就是这个目录,所以我使用了它。现在我不使用它们并不重要,我只想运行一个简单的代码来确保 opencv 正常工作。 -
你是如何安装 OpenCV 的?是哪个版本的?您正在使用哪个编译器以及在哪个平台上?顺便说一句,请注意您的标题提到了 OpenCV 3,但您参考了 2.4.x 的文档——在这种特定情况下可能不是问题,但有些差异可能会让您大吃一惊。