2012-07-13 65 views
3

我以前看过这篇文章,但没有一个的答案似乎适用于我。我刚刚在我的Mac上安装了OpenCV,并通过命令行使用g ++正常工作。我安装了它使用的是Mac端口:如何将OpenCV包含到XCode 4 C++项目中?

$ 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添加到标题搜索构建设置选项卡下的路径。然后我点击了构建阶段,并链接二进制文件库我在/ opt/local/lib(全部11个)中添加了所有OpenCV .dylib文件。这没有奏效。我尝试了很多其他的东西,包括添加到用户搜索路径以及为目标设置“其他链接器标志”。没有工作。它无法找到该文件。如果我使用确切的路径(#include“/opt/local/include/opencv2/opencv.hpp”),它找不到所有其他头文件。

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

+0

自发布此问题以来,运气好吗?看看我的[在这里回答](http://stackoverflow.com/a/11728186/76810),看看它是否有帮助。请注意,我的安装位于/ usr/local中,而不是/ opt/local,因此请确保进行正确的替换。 – SSteve 2012-07-30 21:47:59

+0

我发现最好使用CMake来生成我的XCode项目文件。这样我就不必费心寻找所有合适的库。查找*库* .cmake文件适用于您在计算机视觉应用程序中使用的大多数库。 – subzero 2013-01-17 11:47:21

回答

3

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

#include <opencv2/opencv.hpp>

如果你不想每次都做你启动一个新项目,你可以h和.HPP文件添加到defaulti包括目录Xcode使用。你可以在Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/usr/include找到这个目录。

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

我希望这可以帮助你。