0

我在 mac(OS X 10.8.4) 和 xcode 4.6.3 上安装 OpenCV 时遇到了困难。

我已经尝试过 Macports 和 Homebrew 并且失败了,甚至没有关闭任何地方来运行它。错误通常是“错误:无法安装 bzip2”或“错误:处理端口 opencv 失败”。我在代理后面,这可能是个问题。

最简单和最接近完成的方法是:使用 Cmake,然后使用 OpenCV 使用终端进行安装。然后使用 xcode,如http://sadeepj.blogspot.in/2012/03/installing-and-configuring-opencv-to.html所示,但在 xcode 中构建项目时出现问题,我将 Header Search Paths 的值设置为/usr/local/include 甚至将这两个文件“libopencv_core.2.4.5.dylib & libopencv_highgui.2.4.5.dylib”添加到项目中。

Main.cpp 文件

   #include <iostream>
   #include <opencv2/opencv.hpp>

   using namespace std;
   using namespace cv;

   int main (int argc, const char * argv[])
   {
       Mat img = imread("/Users/mhtgwl/Desktop/baba.jpg"); //Change the image path here.
       if (img.data == 0) {
           cerr << "Image not found!" << endl;
           return -1;
       }
       namedWindow("image", CV_WINDOW_AUTOSIZE);
       imshow("image", img);
       waitKey();
   }

错误是“ld: library not found for -lopencv_core.2.4.5 clang: error: linker command failed with exit code 1 (use -v to see invocation)”,我尝试更改操作系统目标版本并将库搜索路径更改为/usr/local/include 但它没有帮助。

4

3 回答 3

4

如果您使用默认设置,opencv 文件将在 /usr/local/lib 和 /usr/local/include 中,这应该是毫无疑问的。

对于 Xcode 设置,我使用:

  1. 创建命令行工具项目。
  2. 像你一样添加代码。
  3. 添加lib文件,右击你的项目名称,选择“Add files to..”,当出现新的对话框窗口时,按“/”键,然后输入“/usr/local/lib”,根据需要选择dylib文件(为了简单起见,我选择了所有)。
  4. 添加库:双击项目名称进行项目设置,在“构建设置”中,为“库搜索路径”添加“/usr/local/lib”(递归)。
  5. 添加标题:为“标题搜索路径”添加“/usr/local/include”(非递归)
  6. 同样在“构建设置”选项卡中,按“c++ 标准库”过滤,并将此参数设置为 libstdc++(GNU C++ 标准库)

如果您仔细遵循所有这些步骤,我相信您的代码会运行。

于 2013-07-11T01:57:06.560 回答
0

我之前也有同样的问题。将dylib文件添加到项目中时,您需要做的是不包括两个目录“pkgconfig”和“python2.7”。看来cv2.so是python2.7目录中的一个文件。

于 2014-04-08T10:11:42.647 回答
0

虽然您已将“libopencv_core.2.3.1.dylib & libopencv_highgui.2.3.1.dylib”添加到项目中,但链接器正在寻找 -lopencv_core.2.4.5(libopencv_core.2.4.5.dylib 等) . 您的计算机可能在 /usr/local/lib 中安装了旧版本的 Opencv。尝试查找 2.4.5 版本并将这些文件添加到项目中。

对于 OS X 10.8,lib 文件可能安装在 /opt/local/lib 而不是 /usr/local/lib。这取决于您选择的安装方法。

于 2013-07-11T02:23:29.760 回答