【问题标题】:Installing openCV 2.4.2 on Mac OS X 10.9 (Mavericks)在 Mac OS X 10.9 (Mavericks) 上安装 openCV 2.4.2
【发布时间】:2013-11-11 12:21:35
【问题描述】:

我正在尝试在 Mac OS X 10.9 (Mavericks) 上安装 openCV 2.4.2(不是最新版本,但根据多个来源与较新的 OS X 兼容的稳定版本)。我试过从源代码安装并使用自制软件,但都不起作用。尝试安装时出现以下错误:

build Marieke$ make
[ 25%] Building CXX object modules/ts/CMakeFiles/opencv_ts.dir/src/precomp.cpp.o
In file included from /users/Marieke/Downloads/OpenCV-2.4.2/modules/ts/src/precomp.cpp:1:
In file included from /users/Marieke/Downloads/OpenCV-2.4.2/modules/ts/src/precomp.hpp:2:
In file included from /users/Marieke/Downloads/OpenCV-2.4.2/modules/ts/include/opencv2/ts/ts.hpp:40:
/users/Marieke/Downloads/OpenCV-2.4.2/modules/ts/include/opencv2/ts/ts_gtest.h:1657:13: fatal error: 
      'tr1/tuple' file not found
#   include <tr1/tuple>  // NOLINT
        ^
1 error generated.
make[2]: *** [modules/ts/CMakeFiles/opencv_ts.dir/src/precomp.cpp.o] Error 1
make[1]: *** [modules/ts/CMakeFiles/opencv_ts.dir/all] Error 2
make: *** [all] Error 2

我不知道如何解决这个问题,我已经尝试了几件事(我现在有最新版本的 Xcode、cmake、ffmpeg、faac、faad、qt ......)所以如果有人可以帮助我,将不胜感激,谢谢!

【问题讨论】:

    标签: macos opencv


    【解决方案1】:

    假设您已安装brew,请运行以下命令。

    brew tap homebrew/science
    brew install opencv
    

    【讨论】:

    • 这就是我得到的错误:你必须 `brew link jpeg libpng libtiff' 才能安装 opencv Rox:~ Rocela$ brew link jpeg libpng libtiff Linking /usr/local/Cellar/jpeg/8d ... 错误:无法符号链接 include/jconfig.h /usr/local/include 不可写。
    • @roseliux sudo chown &lt;yourusername&gt; /usr/local/include/ 这将允许您的用户修改文件夹及其内容
    【解决方案2】:

    使用macports。安装 macports 后,运行

    sudo port install opencv
    

    在命令提示符下。

    这个other stackoverflow question大部分对于如何在 Xcode 中开始使用 macports 版本的 opencv 是正确的。

    这里有一些关于从 Xcode 5 使用 macports 版本的 OpenCV 的最新说明:

    1. 创建一个新的 Xcode 项目作为 OS X 应用程序 -> 命令行工具等
    2. 点击左上角的目标
    3. 单击构建设置选项卡
    4. 向下滚动到(或搜索)搜索路径部分
    5. 在用户标题搜索路径下添加 /opt/local/include
    6. 单击“构建阶段”选项卡
    7. 单击将二进制文件与库链接
    8. 从 /opt/local/lib 中选择所需的库
      1. 至少,添加 libopencv_core.dylib
    9. 如果您想要预先设置命令行参数,请转到产品 -> 方案 -> 编辑方案 (⌘
    10. 点击左侧的运行标签
    11. 单击“参数”选项卡
    12. 在启动时传递的参数中输入参数
  • 完成!
  • 【讨论】:

      【解决方案3】:

      您可以尝试从 homebrew 安装 opencv,我在 10.9 中遇到了与 cmake 相同的问题,最后我从 Chris Muktar 找到了解决方案。步骤如下:

      1. 确保已安装xcode-select --install Xcode 命令行工具 5.0.1。
      2. 使用 brew 安装 python - brew install python
      3. pip update
      4. pip install numpy
      5. brew linkapps
      6. 在您的主目录中将export PYTHONPATH=/usr/local/Cellar/opencv/2.4.6.1/lib/python2.7/site-packages:$PYTHONPATH 添加到.bash_profile
      7. brew install opencv

      在最后一步中,我遇到了错误:No available formula for opencv。在这种情况下,您应该先运行命令brew tap homebrew/science

      祝你好运

      【讨论】:

      • 对我来说,OpenCV 构建良好,但 opencv/2.4.7.1/lib 文件夹中没有 python* 文件夹。其他教程告诉我应该将cv2.so 文件安装到我的site-packages 文件夹之一,但我在系统上的任何地方都找不到该名称的任何文件。因此 import cvimport cv2 在 Python 中不起作用。
      • @NeilTraft 抱歉,我现在无法解决这个问题,希望您尽快解决。
      • 我确实想通了。我试图使用 virtualenv 进行安装,而不是使用 numpy 版本弄脏我的全局 python 安装。不幸的是,brew 安装过程不喜欢这样。 NumPy 需要在全局级别安装。谢谢。
      • @NeilTraft,我实际上有一个 virtualenv,我从源代码安装了 numpy、scipy 和 opencv。对于 OSX,clang 存在问题,因此您需要将此环境变量设置为解决方法:“export ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future”
      【解决方案4】:

      感谢您的回答! 我最终得到了以下解决方案:我将#define GTEST_USE_OWN_TR1_TUPLE 1 添加到ts_gtest.h。可能不是最漂亮的解决方案,但我不需要 gtest 其他任何东西,所以它对我有用。

      【讨论】:

      • 也走这条路:)
      【解决方案5】:

      您可以在 CMakeCache.txt 文件中禁用 ts 模块:

      //Include opencv_ts module into the OpenCV build
      BUILD_opencv_ts:BOOL=OFF
      

      我的意思是没有理由修改现有代码。

      【讨论】:

        【解决方案6】:

        我认为您确实需要进行配置,仅此而已。

        我试过你的问题,我认为步骤如下:

        1. 在 mac 中打开终端
        2. 在终端中,检查您是否安装了 cmake 和 ccmake。如果没有,请输入“brew install cmake”
        3. 转到您下载的 opencv 文件夹,输入“mkdir build”创建一个新文件夹,然后输入“cd build”
        4. 在此构建文件夹中,检查您是否安装了 gcc 和 g++。
        5. 现在,通过键入“ccmake .. -DCMAKE_C_COMPILER=/usr/bin/gcc -DCMAKE_CXX_COMPILER=/usr/bin/g++”进行配置,首先键入“c”进行配置,然后按“e”退出,然后按“g”退出用于生成!
        6. 你现在应该又回到终端了!那么请输入“make”
        7. 输入“sudo make install”,现在opencv就安装好了,输入“brew list”查看,应该可以看到opencv了
        8. 输入“brew linkapps”
        9. 如果您有 python,请输入“import cv”进行测试,它应该可以工作!

        【讨论】:

        • 我必须安装更多参数:cmake -DWITH_QUICKTIME=OFF -DWITH_GSTREAMER=OFF -DWITH_FFMPEG=OFF -DCMAKE_C_COMPILER=/usr/bin/clang -DCMAKE_CXX_COMPILER=/usr/bin/clang++ -DCMAKE_BUILD_TYPE =释放..; make -j4
        • @Ricky 是的,-DCMAKE_C_COMPILER=/usr/bin/clang -DCMAKE_CXX_COMPILER=/usr/bin/clang++ 选项在 OS X 上非常重要,否则会在某些头文件中遇到语法错误。
        【解决方案7】:

        这可能与当前 Qt on Mavericks 的问题有关。

        见:https://github.com/mxcl/homebrew/pull/23793

        我会尝试为 qt 安装当前已修补的自制小桶,然后安装 opencv:

        brew update
        brew uninstall opencv
        brew uninstall qt
        brew install -v https://raw.github.com/cliffrowley/homebrew/patched_qt/Library/Formula/qt.rb --HEAD
        brew install opencv
        

        小心:qt build 花了我大约一个小时才完成

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2013-11-17
          • 2013-11-01
          • 2014-03-20
          • 1970-01-01
          • 2014-03-05
          • 1970-01-01
          • 2014-02-12
          • 1970-01-01
          相关资源
          最近更新 更多