【问题标题】:Symbol 'cv' could not be resolved in eclipseEclipse 中无法解析符号“cv”
【发布时间】:2014-07-23 07:07:36
【问题描述】:

我正在尝试在 Eclipse 中配置 openCV,在我添加的包含路径中

/usr/local/include/opencv
/usr/local/include

我已经使用 pkg-config --libs opencv 在 GCC C++ Linker 中添加了一些库:

/usr/local/lib/libopencv_calib3d.so
/usr/local/lib/libopencv_contrib.so
...

在我包含的头文件中:

#include <opencv2/highgui/highgui.hpp>
#include <opencv2/core/eigen.hpp>

但是当我声明时

using namespace cv;

我收到一个错误:无法解析符号“cv”

【问题讨论】:

    标签: c++ eclipse opencv


    【解决方案1】:

    问题是链接器找不到名为cv的符号。

    假设您已正确安装所有内容,即。每个文件 [1] 都在它应该在的位置,这是因为您没有告诉 链接器 它应该 链接 哪些文件。

    注意pkg-config --libs opencv列出的文件真的存在吗?


    解决方案

    1. 转到项目的属性
    2. 单击C/C++ 构建
    3. 点击设置
    4. 找到 GCC C++ 链接器(在 工具设置 选项卡下)
      1. 添加 OpenCV 库。

    详细指南

    OpenCV 有一个关于如何使其与 Eclipse 一起工作的官方指南:

    【讨论】:

    • 我使用 pkg-config --libs opencv 命令查找库并将它们添加到 GCC C++ 链接器,包括:/usr/local/lib/libopencv_calib3d.so /usr/local/lib/libopencv_contrib。所以 /usr/local/lib/libopencv_core.so /usr/local/lib/libopencv_features2d.so /usr/local/lib/libopencv_flann.so /usr/local/lib/libopencv_gpu.so /usr/local/lib/libopencv_highgui。所以 /usr/local/lib/libopencv_imgproc.so /usr/local/lib/libopencv_legacy.so /usr/local/lib/libopencv_ml.so /usr/local/lib/libopencv_nonfree.so ...但它无法解决.
    • 你的意思是我必须将它们添加到项目的符号中?
    • @user3693423 是的,这就是我要说的 - 将它们添加到项目的符号中!
    • 我已将它们添加到路径和符号配置中的库选项卡中,但仍然出错。
    • @user3693423 您是否检查过,例如,/usr/local/lib/libopencv_calib3d.so 真的存在吗?试试ls -lah /usr/local/lib/libopencv_calib3d.so
    【解决方案2】:

    你应该包含 opencv.hpp
    转到 GCC C++ 编译器,转到包含。在包含文件(-l)中添加 /usr/include/opencv2/opencv.hpp

    【讨论】:

      【解决方案3】:

      您应该首先在 GCC C++ 编译器中包含 /usr/local/include。请看下一张图片。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-08-02
        • 2011-11-18
        • 2016-02-13
        • 2012-06-03
        • 1970-01-01
        相关资源
        最近更新 更多