使用 Xcode 4.6 在 Mac OS X Lion (10.8.2) 上安装 OpenCV [关闭]

Posted

技术标签:

【中文标题】使用 Xcode 4.6 在 Mac OS X Lion (10.8.2) 上安装 OpenCV [关闭]【英文标题】:Install OpenCV on Mac OS X Lion (10.8.2) with Xcode 4.6 [closed] 【发布时间】:2013-03-13 14:54:33 【问题描述】:

在我的机器上安装 OpenCV 的步骤(MBP、15"、2.5 GHz i7、16GB RAM、AMD Radeon HD 6770M、128GB SSD)

    我安装了 git 命令行工具 已安装最新的 macports 版本 cmake 安装了$ sudo port install cmake 克隆 opencv 的 repo $ git clone git://code.opencv.org/opencv.git

    repo 在我的机器上后,我切换到这个目录并创建一个新目录

    $ cd opencv $ mkdir build $ cd build

    然后我运行$ cmake -G “Unix Makefiles” ../

    之后我得到了

    `--检查模块'libdc1394-2' -- 未找到包“libdc1394-2” -- 检查模块“libdc1394” -- 未找到包“libdc1394” -- 检查模块“libv4l1” -- 未找到包“libv4l1” -- 寻找 linux/videodev.h -- 寻找 linux/videodev.h - 未找到 -- 寻找 linux/videodev2.h -- 寻找 linux/videodev2.h - 未找到 -- 寻找 sys/videoio.h -- 寻找 sys/videoio.h - 未找到 -- 检查模块“libavcodec” -- 未找到包“libavcodec” -- 检查模块“libavformat” -- 未找到包“libavformat” -- 检查模块“libavutil” -- 未找到包“libavutil” -- 检查模块“libswscale” -- 未找到包“libswscale” -- 寻找 libavformat/avformat.h -- 寻找 libavformat/avformat.h - 未找到 -- 寻找 ffmpeg/avformat.h -- 寻找 ffmpeg/avformat.h - 未找到 -- 找不到 PythonLibs:找到不合适的版本“2.7.2”,但需要的是准确的版本“2.7.3”(找到 /usr/lib/libpython2.7.dylib) 回溯(最近一次通话最后): 文件“”,第 1 行,在 ImportError:没有名为 numpy.distutils 的模块

    -- 找到 apache ant 1.8.2: /usr/bin/ant

    -- OpenCV 2.4.9 的一般配置 ======================================

    --版本控制:2.4.4-642-g061dd7e

    -- 平台: -- 主机:达尔文 12.2.0 i386 -- CMake:2.8.10 -- CMake 生成器:Unix Makefiles -- CMake 构建工具:/usr/bin/make

    -- 配置:发布

    -- C/C++: -- 构建为动态库?:是 -- C++ 编译器:/usr/bin/c++ (ver 4.2.0) -- C++ 标志(发布):-W -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wno-narrowing -Wno-delete-non-virtual-dtor -Wno-unnamed-type-template-args -fdiagnostics-show-option -fno-省略帧指针 -msse -msse2 -msse3 -O3 -DNDEBUG -DNDEBUG -- C++ 标志(调试):-W -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wno-narrowing -Wno-delete-non-virtual-dtor -Wno-unnamed-type-template-args -fdiagnostics-show-option -fno-省略帧指针 -msse -msse2 -msse3 -g -O0 -DDEBUG -D_DEBUG -ggdb3 -- C 编译器:/usr/bin/cc -- C 标志(发布):-W -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wno-narrowing -Wno-delete-non-virtual-dtor -Wno-unnamed-type-template-args -fdiagnostics-show-option -fno-省略帧指针 -msse -msse2 -msse3 -O3 -DNDEBUG -DNDEBUG -- C 标志(调试):-W -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wno-narrowing -Wno-delete-non-virtual-dtor -Wno-unnamed-type-template-args -fdiagnostics-show-option -fno-省略帧指针 -msse -msse2 -msse3 -g -O0 -DDEBUG -D_DEBUG -ggdb3 -- 链接器标志(发布): -- 链接器标志(调试):

    -- 预编译头文件:否

    -- OpenCV 模块: -- 待建:核心 imgproc flann highgui features2d calib3d ml video objdetect contrib nonfree photo legacy gpu java softcascade 拼接 ts videostab -- 禁用:世界 -- 被依赖禁用:-

    -- 不可用:androidcamera ocl python

    --图形用户界面: -- QT 4.x:没有 -- 可可:是的

    -- OpenGL 支持:否

    -- 媒体 I/O: -- ZLib:构建(版本 1.2.7) -- JPEG:构建(版本 90) -- WEBP:构建(版本 0.2.1) -- PNG:构建(版本 1.5.12) -- TIFF:构建(版本 42 - 4.0.2) -- JPEG 2000:构建(版本 1.900.1)

    -- OpenEXR:构建(版本 1.7.1)

    -- 视频输入/输出: -- DC1394 1.x:否 -- DC1394 2.x:否 -- FFMPEG:是的 -- 编解码器:是(未知版本) -- 格式:YES (ver Unknown) -- util: YES (ver Unknown) -- swscale: YES (ver Unknown) -- gentoo 风格:是 -- OpenNI: 否 -- OpenNI PrimeSensor 模块:否 -- PvAPI:否 -- GigEVisionSDK:否 -- 快速时间:否 -- QTKit:是的

    -- V4L/V4L2: NO/NO

    -- 其他第三方库: -- 使用 IPP:否 -- 使用特征:否 -- 使用待定:否 -- 使用 OpenMP:否 -- 使用 GCD 是 -- 使用并发 NO -- 使用 C=: 否 -- 使用 Cuda:否

    -- 使用 OpenCL:否

    -- 蟒蛇:

    -- 解释器:/opt/local/bin/python2 (ver 2.7.3)

    --Java: -- 蚂蚁:/usr/bin/ant(1.8.2 版) -- JNI: /System/Library/Frameworks/JavaVM.framework/Headers /System/Library/Frameworks/JavaVM.framework/Headers /System/Library/Frameworks/JavaVM.framework/Headers

    -- Java 测试:是

    -- 文档: -- 构建文档:否 -- 斯芬克斯:没有

    -- PdfLaTeX 编译器:否

    -- 测试和样品: -- 测试:是 -- 性能测试:是

    -- C/C++ 示例:否

    -- 安装路径:/usr/local

    -- cvconfig.h 在:/Users/miralemcebic/Desktop/ocv/opencv/build

    --- ---------------------------------------------- --------------------

    -- 配置完成 -- 生成完成 -- 构建文件已写入:/Users/miralemcebic/Desktop/ocv/opencv/build`

    比我跑$ cmake -G “Unix Makefiles” ../

    现在出现了错误,最后我明白了 30%

    ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) make[2]: *** [lib/libopencv_highgui.2.4.9.dylib] Error 1 make[1]: *** [modules/highgui/CMakeFiles/opencv_highgui.dir/all] Error 2 make: *** [all] Error 2

这里有什么问题?我也有 Python 2.7 和 Python >3

有人可以帮我解决这个问题吗?

【问题讨论】:

机会很好,你错过了 ffmpeg(尤其是 libavcodec),如果安装了它,请确保你也编译了静态库(libavcodec.a) 通过在终端应用程序中粘贴以下命令来安装ffmpeg: $ sudo port install ffmpeg +gpl +postproc +lame +theora +libogg +vorbis+xvid +x264 +a52 +faac +faad +dts +非免费 【参考方案1】:

安装macports

$ sudo port selfupdate
$ sudo port install opencv

等等。

【讨论】:

Miralems-MacBookPro:~ miralemcebic$ sudo port selfupdate 密码:---> 使用 rsync 更新 MacPorts 基础源代码 安装了 MacPorts 基础版本 2.1.3,下载了 MacPorts 基础版本 2.1.3。 ---> 更新端口树 Miralems-MacBookPro:~ miralemcebic$ sudo port install opencv ---> 计算 opencv 的依赖项 ---> 清理 opencv ---> 扫描二进制文件以查找链接错误:100.0% ---> 否发现损坏的文件。 Miralems-MacBookPro:~ miralemcebic$ 这是它吗? @Mir23 我不知道是不是这样;你可能想测试它并告诉我。 你有 dylib 吗?在 /usr/local/lib 中还是有 .framework? Macports 安装到/opt/local/lib,而不是/usr/local/lib,我自己从来没有安装过,所以我不知道你是静态库还是动态库。如果您想要 Python 集成之类的东西(即sudo port install opencv +python27),您可能想要使用 variant。详情请见$ port info opencv

以上是关于使用 Xcode 4.6 在 Mac OS X Lion (10.8.2) 上安装 OpenCV [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

在没有 Xcode 的 Mac OS X 上构建 VST 插件

如何在 Mac OS X 10.8 / Xcode 4.4 上使用/安装 gcc

在 Xcode 4 中使用 SVN 和 Mac OS X Lion (10.7)

Mac OS X 服务器 Xcode 机器人问题

Xcode 4.5.2 在 Mac OS X Mountain Lion 上不断崩溃?

在 Mac OS X Yosemite 上下载 XCode 6.1 时遇到问题