【问题标题】:Including OpenCv header files in Ubuntu在 Ubuntu 中包含 OpenCv 头文件
【发布时间】:2013-10-24 04:38:56
【问题描述】:

我首先将 highgui.hpp 文件包含为

#include "opencv2/highgui/highgui.hpp"

这给出了错误“没有这样的文件或目录”。

当我把它替换为

#include "/host/opencv/build/include/opencv2/highgui/highgui.hpp"

此错误已解决。但是我又遇到了一个错误,

在 opencvtest.cpp:1:0 包含的文件中: /host/opencv/build/include/opencv2/highgui/highgui.hpp:46:33: 致命错误: opencv2/core/core.hpp: 没有这样的文件或目录

这意味着现在 highgui.hpp 中包含的 core.hpp 文件无法定位。

我需要一种方法,以便它可以自动在“include”文件夹中查找包含的文件。如何在ubuntu中做到这一点? 我之前使用过 Microsoft Visual Studio,该文件夹被添加到项目属性中,在其他库中。

【问题讨论】:

  • 添加用于编译代码的命令

标签: c++ opencv ubuntu header-files


【解决方案1】:

您需要在编译器命令中添加以下标志:

-I<here_path_to_opencv_headers_root>

【讨论】:

    【解决方案2】:

    OpenCV 的安装完成了吗? 通常,如果传递了命令“sudo make install”,则标头位于包含路径中 如果您没有在系统上安装 OpenCV,请在 make 的命令行中添加 -Ihost/opencv/build/include/ 。但是当你设置了包含时,lib 也会出现同样的问题。 最好的解决方案是遵循http://docs.opencv.org/trunk/doc/tutorials/introduction/linux_install/linux_install.htmlhttps://help.ubuntu.com/community/OpenCV的指示

    【讨论】:

      【解决方案3】:

      你也可以使用一个叫做 pkg-config 的工具来找到你需要的头文件和库的位置,像这样

       pkg-config --libs --cflags opencv
      

      您可以将这些包含在编译器标志中或使用

      构建脚本
       clang++  $(pkg-config --libs --cflags opencv)  -o main.cpp binary.app
      

      【讨论】:

        猜你喜欢
        • 2013-10-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-08-30
        • 2019-04-07
        相关资源
        最近更新 更多