我想编译这个opencv c ++代码:
使用命名空间std; 使用namespace cv;
int main(int argc, char **argv)
{
Mat img=imread("s.jpg");
namedWindow("Display",WINDOW_AUTOSIZE);
imshow("Display",img);
cv::waitKey(0);
return 0;
}
当我使用此命令时:
g++ test.cpp -o exec -lopencv_core -lopencv_highgui
我明白了:
/usr/bin/ld: /tmp/ccHJ1OKR.o: undefined reference to symbol '_ZN2cv6imreadERKNS_6StringEi'
//usr/local/lib/libopencv_imgcodecs.so.3.1: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
当我使用此命令时:
g++ test.cpp -o exec `pkg-config --cflags --libs opencv`
我明白了:
/usr/bin/ld: cannot find -lippicv
collect2: error: ld returned 1 exit status
我的openCV是3.1.0版本 我的g ++是5.4.0版本,我有ubuntu Ubuntu 16.04.4 LTS。
你怎么看?谢谢
答案 0 :(得分:0)
我有同样的问题,只是用户问题,请以管理员或超级用户身份重试。