使用Opencv3运行Opencv2开发的程序遇到的bug

Bug1:

/usr/bin/ld: build/main.o: undefined reference to symbol '_ZN2cv6imreadERKNS_6StringEi'
/usr/local/lib/libopencv_imgcodecs.so.3.4: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status

Solution:

在lib中加入 -lopencv_imgcodecs

 

Bug2:

error: ‘imread’ is not a member of ‘cv’
error: ‘imshow’ is not a member of ‘cv’
error: ‘resize’ is not a member of ‘cv’
...

Solution:

将主程序中的头文件#include "cv.h"替换为:

#include "opencv2/core/core.hpp"
#include "opencv2/opencv.hpp"

 

Bug3:

/usr/bin/ld: warning: libopencv_imgproc.so.3.4, needed by //usr/local/lib/libopencv_imgcodecs.so, may conflict with libopencv_imgproc.so.2.4
/usr/bin/ld: warning: libopencv_core.so.3.4, needed by //usr/local/lib/libopencv_imgcodecs.so, may conflict with libopencv_core.so.2.4
/usr/bin/ld: build/main.o: undefined reference to symbol '_ZN2cv6String10deallocateEv'
//usr/local/lib/libopencv_core.so.3.4: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status

Solution:

opencv3默认的安装路径为:/usr/local/lib ,需要手动添加链接opencv库文件的路径。

你可能感兴趣的:(Opencv)