简体   繁体   English

链接器错误,在Ubuntu 15.04上使用OpenCV和Eclipse CDT

[英]Linker Error, Using OpenCV and Eclipse CDT on ubuntu 15.04

I'm going step by step like this guide and my code does not compile. 我将按照本指南的步骤进行操作,并且我的代码无法编译。 It has gotten some linker errors which I don't know how to fix. 它出现了一些链接器错误,我不知道该如何解决。 this is my terminal's answer to : pkg-config --libs opencv 这是我的终端对以下内容的回答: pkg-config --libs opencv

/usr/lib/x86_64-linux-gnu$ pkg-config --libs opencv /usr/lib/x86_64-linux-gnu/libopencv_calib3d.so -lopencv_calib3d /usr/lib/x86_64-linux-gnu/libopencv_contrib.so -lopencv_contrib /usr/lib/x86_64-linux-gnu/libopencv_core.so -lopencv_core /usr/lib/x86_64-linux-gnu/libopencv_features2d.so -lopencv_features2d /usr/lib/x86_64-linux-gnu/libopencv_flann.so -lopencv_flann /usr/lib/x86_64-linux-gnu/libopencv_gpu.so -lopencv_gpu /usr/lib/x86_64-linux-gnu/libopencv_highgui.so -lopencv_highgui /usr/lib/x86_64-linux-gnu/libopencv_imgproc.so -lopencv_imgproc /usr/lib/x86_64-linux-gnu/libopencv_legacy.so -lopencv_legacy /usr/lib/x86_64-linux-gnu/libopencv_ml.so -lopencv_ml /usr/lib/x86_64-linux-gnu/libopencv_objdetect.so -lopencv_objdetect /usr/lib/x86_64-linux-gnu/libopencv_ocl.so -lopencv_ocl /usr/lib/x86_64-linux-gnu/libopencv_photo.so -lopencv_photo /usr/lib/x86_64-linux-gnu/libopencv_stitching.so -lopencv_stitching /usr/lib/x86_64-linux-gnu/libopencv_superres.so -lopencv_superres /usr/lib/x86_6 / usr / lib / x86_64-linux-gnu $ pkg-config --libs opencv /usr/lib/x86_64-linux-gnu/libopencv_calib3d.so -lopencv_calib3d /usr/lib/x86_64-linux-gnu/libopencv_contrib.so -lopencv_contrib /usr/lib/x86_64-linux-gnu/libopencv_core.so -lopencv_core /usr/lib/x86_64-linux-gnu/libopencv_features2d.so -lopencv_features2d /usr/lib/x86_64-linux-gnu/libopencv_flann.so / usr-libncc_fla /lib/x86_64-linux-gnu/libopencv_gpu.so -lopencv_gpu /usr/lib/x86_64-linux-gnu/libopencv_highgui.so -lopencv_highgui /usr/lib/x86_64-linux-gnu/libopencv_imgproc.so -lopencv_imgproc / usr / lib /x86_64-linux-gnu/libopencv_legacy.so -lopencv_legacy /usr/lib/x86_64-linux-gnu/libopencv_ml.so -lopencv_ml /usr/lib/x86_64-linux-gnu/libopencv_objdetect.so -lopencv_objdetect / usr / lib / x86_64 -linux-gnu / libopencv_ocl.so -lopencv_ocl /usr/lib/x86_64-linux-gnu/libopencv_photo.so -lopencv_photo /usr/lib/x86_64-linux-gnu/libopencv_stitching.so -lopencv_stitching / usr / lib / x86_64-linux -gnu / libopencv_superres.so -lopencv_superres / usr / lib / x86_6 4-linux-gnu/libopencv_ts.so -lopencv_ts /usr/lib/x86_64-linux-gnu/libopencv_video.so -lopencv_video /usr/lib/x86_64-linux-gnu/libopencv_videostab.so -lopencv_videostab 4-linux-gnu / libopencv_ts.so -lopencv_ts /usr/lib/x86_64-linux-gnu/libopencv_video.so -lopencv_video /usr/lib/x86_64-linux-gnu/libopencv_videostab.so -lopencv_videostab

sorry if it's a mess to read but this is exactly how I received the answer. 很抱歉,如果阅读时一团糟,但这正是我收到答案的方式。

This is how I've organized my linker 这就是我组织链接器的方式 链接器设置

this is the error I get: 这是我得到的错误:

Building target: Ball_Plate Invoking: GCC C++ Linker g++ -L/usr/lib/x86_64-linux-gnu -o"Ball_Plate" ./Src/src.o -lopencv_core\\ opencv_imgproc\\ opencv_highgui\\ opencv_ml\\ opencv_video\\ opencv_features2d\\ opencv_calib3d\\ opencv_objdetect\\ opencv_contrib\\ opencv_legacy\\ opencv_flann /usr/bin/ld: cannot find -lopencv_core opencv_imgproc opencv_highgui opencv_ml opencv_video opencv_features2d opencv_calib3d opencv_objdetect opencv_contrib opencv_legacy opencv_flann collect2: error: ld returned 1 exit status makefile:45: recipe for target 'Ball_Plate' failed make: *** [Ball_Plate] Error 1 构建目标:Ball_Plate调用:GCC C ++链接器g ++ -L / usr / lib / x86_64-linux-gnu -o“ Ball_Plate” ./Src/src.o -lopencv_core \\ opencv_imgproc \\ opencv_highgui \\ opencv_ml \\ opencv_video \\ opencv_features2d \\ \\ opencv_contrib \\ opencv_legacy \\ opencv_flann / usr / bin / ld:找不到-lopencv_core opencv_imgproc opencv_highgui opencv_ml opencv_video opencv_features2d opencv_calib3d opencv_objdetect opencv_contrib opencv_flaacy openCv_flaacy * 1 ** [Ball_Plate]错误1

I don't know how to fix this, I don't know much about how linker works around .so files and I would appreciate that if you could help me. 我不知道如何解决此问题,我也不了解链接程序如何处理.so文件,因此,如果您能帮助我,我将不胜感激。

因此,我阅读了这篇文章,并找出了问题所在,尝试使用-DBUILD_TIFF=ON编译OpenCV库,现在Eclipse可以找到头文件了,但是我又遇到了链接器错误,Eclipse无法链接库。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM