openCV 2.4.7错误添加符号:命令行中缺少DSO

ahr*_*est 3 c++ linker opencv

我有一个自编译opencv的问题...

XUbuntu 13.10 x64 gcc版本4.8.1

cmake -D WITH_TBB = ON -D BUILD_NEW_PYTHON_SUPPORT = ON -D WITH_V4L = ON -D INSTALL_C_EXAMPLES = ON -D INSTALL_PYTHON_EXAMPLES = ON -D BUILD_EXAMPLES = ON -D WITH_QT = ON -D WITH_OPENGL = ON -D WITH_OPENMP = ON ..

Everthing看起来很好.简单的例子将是有效的.我的问题是,我想在xubuntu中使用nonfree(SURF)包.

现在我想编译这些示例 http://docs.opencv.org/doc/tutorials/features2d/feature_detection/feature_detection.html 并得到此错误(主题)

g ++ -I/usr/local/include/opencv -I/usr/local/include/opencv2 -O0 -g3 -Wall -c -fmessage-length = 0 -MMD -MP -MF"example.d"-MT"示例.d"-o"example.o""../ example.cpp"完成建筑物:../ example.cpp

构建目标:SURF_Example调用:GCC C++链接器

g ++ -L/usr/local/lib -o"SURF_Example"./ example.o -lopencv_core -lopencv_imgproc -lopencv_highgui -lopencv_objdetect -lopencv_nonfree

libopencv_features2d.so.2.4:添加符号时出错:命令行中缺少DSO

有帮助吗?

old*_*ufo 6

可能问题在于错误的链接顺序和缺少的lib features2d.尝试

g++ -L/usr/local/lib -o "SURF_Example" ./example.o -lopencv_nonfree -lopencv_objdetect -lopencv_features2d -lopencv_imgproc -lopencv_highgui -lopencv_core  
Run Code Online (Sandbox Code Playgroud)

  • 我有类似的问题:```libopencv_imgcodecs.so.3.3: error added symbols: DSO missing from command line```,所以添加 ```-lopencv_imgcodecs``` 对我有用 (2认同)