1. opencv在ubuntu上的配置和测试
http://blog.csdn.net/a1429331875/article/details/31539129
2. OpenCV 3.0 程序编译链接错误
问题描述
error: main.o: undefined reference to symbol ‘_ZN2cv6imreadERKNS_6StringEi’
/usr/local/OpenCV/Release/lib/libopencv_imgcodecs.so.3.0:-1: error: error adding symbols: DSO missing from command line
error: collect2: error: ld returned 1 exit status
解决方案
问题描述里已经表述得很清楚了,需要链接libopencv_imgcodecs.so,这可能是和2.x版本的一处不同。
如果问题描述为:
error: undefined reference to `cv::imread(cv::String const&, int)’
解决方法同上。
3. 编译时需要添加的库
INCLUDEPATH += /usr/local/include \
/usr/local/include/opencv \
/usr/local/include/opencv2
LIBS += /usr/local/lib/libopencv_highgui.so \
/usr/local/lib/libopencv_core.so \
/usr/local/lib/libopencv_imgproc.so \
/usr/local/lib/libopencv_imgcodecs.so
4. 测试
#include <iostream>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
using namespace cv;
using namespace std;
int main()
{
namedWindow( "src");
Mat img = imread( "/home/ld/Documents/lena.jpg" );
if(!img.data) {
cout<<"file not fount"<<endl;
return 1;
}
else {
imshow( "src", img );
waitKey();
return 0;
}
}