我已经在谷歌上搜索并尝试了好几天,试图找出如何让 32 位 OpenCV 在 OS X Lion 上工作,但只能找到 64 位版本。
所以我有以下问题:
OpenCV 库有 32 位或 64 位架构,对吗?
如何让 32 位 OpenCV 在 Lion 上运行?我尝试了以下几种方法:
- 通过 MacPorts 安装 OpenCV:不,MacPorts 安装 64 位版本。BI 删除了 OpenCV 和 MacPorts。
- 使用以下命令通过 Homebrew 安装 OpenCV 2.4.1:
酿造安装opencv--build32
但看起来它们也是 64 位的。删除了 OpenCV 和 Homebrew。
- 使用标准 unix makefile 自行安装 OpenCV 2.4.1。不,它们看起来仍然像 64 位。
我写了“它们看起来像 64 位”,因为我必须在 OS X Snow Leopard 下制作的 Xcode 项目中替换 OpenC,目标是 32 位 Mac,而且我总是收到大量错误,例如:
ld:警告:忽略文件 /usr/local/Cellar/opencv/2.4.1/lib/libopencv_calib3d.2.4.1.dylib,该文件是为不受支持的文件格式构建的,该格式不是正在链接的体系结构(i386)
所以我认为 OpenCV 的东西是 64 位的。如果我强制项目以 64 位运行,它会发生摩擦,但无法正常工作并卡住。
有没有标准方法来检查我的 OpenCV 库是 64 位还是 32 位?
在哪里可以获得 32 位 OpenCV?
解决了问题。
回顾一下:64 位 Mac OSX Lion 上可以有 32 位 OpenCV 库。
How?
第1步:下载OpenCV 2.4.0
第2步:下载并安装CMake。
步骤3:解压OpenCV包。
步骤 4:在 OpenCV 包中创建一个单独的目录用于构建
mkdir build
cd build
cmake -G "Unix Makefiles" -D CMAKE_OSX_ARCHITECTURES=i386 -D CMAKE_C_FLAGS=-m32 -D CMAKE_CXX_FLAGS=-m32 ..
(这将强制32位编译)
make -j8
sudo make install
第5步:享受吧!
如需进一步参考,请访问Mac OS X OpenCV 端口页面
感谢大家让我走上正轨:
@卡尔菲利普:我尝试按照您的建议进行操作,但是如果没有 make 选项,编译阶段就会失败,因为体系结构不连贯。
@hamstergene:MacPorts 在新安装后卡住了,也许我还有一些旧安装的残留:((奇怪,我按照官方说明将其删除)。
@Adrien:这就是我所做的,但我必须合并两种方法:)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)