如何将OpenCV包含到XCode 4 c ++项目中?

时间:2012-07-13 17:10:20

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

我之前看过这个帖子,但没有一个答案似乎适合我。我刚刚在Mac上安装了OpenCV,并从命令行使用g ++工作。我使用Mac Ports安装它:

$ 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 Settings选项卡下的路径。然后我点击Build Phases,并将Binary与Libraries链接起来我在/ opt / local / lib中添加了所有OpenCV .dylib文件(所有11个)。这没用。我已经尝试了很多其他的东西,包括添加到用户搜索路径和为目标设置“其他链接器标志”。没有任何效果。它无法找到该文件。如果我使用确切的路径(#include“/opt/local/include/opencv2/opencv.hpp”),它找不到所有其他头文件。

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

1 个答案:

答案 0 :(得分:3)

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

  

#include <opencv2/opencv.hpp>

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

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

我希望这可以帮助你。