【问题标题】:How to include OpenCV include into XCode 4 c++ project?如何将 OpenCV 包含到 XCode 4 c++ 项目中?
【发布时间】:2012-07-13 17:10:19
【问题描述】:

我以前看过这方面的帖子,但似乎没有一个答案对我有用。我刚刚在我的 Mac 上安装了 OpenCV,并让它在命令行中与 g++ 一起正常工作。我使用 Mac 端口安装了它:

$ sudo port install opencv configure.compiler=llvm-gcc-4.2

要使用 g++ 编译,我使用命令:

g++ myfile.cpp -o myprogram -I/opt/local/include -L/opt/local/lib -lopencv_core.2.4.2 -lopencv_calib3d.2.4.2

而我的 OpenCV 在 main.cpp 文件中包含头文件是:

#include "opencv2/opencv.hpp"

一切正常。

现在,当我尝试在 Xcode 中包含该库时,它只是说找不到“opencv2/opencv.hpp”文件。为了在 Xcode 中包含这个库,我遵循了一些详细的说明。首先,对于项目目标,我将 /opt/local/lib 添加到库搜索路径,并将 /opt/local/include、/opt/local/include/opencv 和 /opt/local/include/opencv2 添加到标题搜索构建设置选项卡下的路径。然后我点击 Build Phases,并在 Link Binary With Libraries 中添加了所有 OpenCV .dylib 文件到 /opt/local/lib(全部 11 个)。这没有用。我尝试了许多其他的事情,包括添加到用户搜索路径和为目标设置“其他链接器标志”。没有任何效果。它找不到文件。如果我使用确切的路径(#include "/opt/local/include/opencv2/opencv.hpp"),它将找不到所有其他头文件。

OpenCV 的版本是 2.4.2。我在 OS X Lion 10.7.4 上使用 Xcode 4.3.3。这是一个 C++ 项目。有什么想法吗?

【问题讨论】:

  • 自您发布问题以来运气好吗?看看我的answer here 看看是否有帮助。请注意,我的安装位于 /usr/local,而不是 /opt/local,因此请务必进行正确的替换。
  • 我发现最好使用 CMake 来生成我的 XCode 项目文件。这样我就不必费心寻找所有合适的库了。 FindLibrary.cmake 文件可用于您将在计算机视觉应用程序中使用的大多数库。

标签: c++ xcode macos opencv xcode4.2


【解决方案1】:

这个问题可以通过进入项目属性并点击目标来解决。 在构建设置中搜索“标题搜索路径”。 并在那里添加“/opt/local/include”。 通过这样做,您告诉 Xcode 也在该目录中查找头文件。 现在您可以使用:

#include <opencv2/opencv.hpp>

如果您不想在每次启动新项目时都这样做,您可以将 .h 和 .hpp 文件添加到 Xcode 使用的默认包含目录中。你可以在 Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/usr/include 找到这个目录。

您还必须将二进制文件添加到您的项目中。为此,您转到“构建阶段”,然后在“将二进制文件与库链接”部分中添加二进制文件。

希望对你有所帮助。

【讨论】:

    猜你喜欢
    • 2019-04-07
    • 1970-01-01
    • 1970-01-01
    • 2012-03-07
    • 1970-01-01
    • 1970-01-01
    • 2012-03-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多