c++ - OS X Lion 上的 32 位 OpenCV?可能的?

标签 c++ opencv xcode4 osx-lion 32bit-64bit

几天来我一直在谷歌搜索和尝试,试图弄清楚如何让 32 位 OpenCV 在 OS X Lion 上运行,但只能找到 64 位版本。

所以我有以下问题:

OpenCV 库有 32 位或 64 位架构,对吗?

如何让 32 位 OpenCV 在 Lion 上运行?我正在尝试以下方法: - 通过 MacPorts 安装 OpenCV:不,MacPorts 安装 64 位版本。BI 删除了 OpenCV 和 MacPorts。

  • 使用以下命令通过 Homebrew 安装 OpenCV 2.4.1:

brew 安装 opencv --build32

但看起来它们也是 64 位的。删除了 OpenCV 和 Homebrew。

  • 使用标准 unix makefile 自行安装 OpenCV 2.4.1。不,它们看起来仍然像 64 位。

我写了“它们看起来像 64 位”,因为我必须在 OS X Snow Leopard 下针对 32 位 Mac 开发的 Xcode 项目中替换 OpenC,而且我总是会遇到大量错误,例如:

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 库。

如何?

第 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 Port Page

感谢大家让我走上正轨:

@karlphilip:我试着按照你的建议去做,但没有 make 选项编译阶段失败,因为架构不连贯。

@hamstergene:新安装后 MacPorts 卡住了,也许我还有一些旧安装的残留 :((奇怪,我按照官方说明删除了它)。

@Adrien:这就是我所做的,但我不得不合并 2 种方法:)

关于c++ - OS X Lion 上的 32 位 OpenCV?可能的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11223305/

相关文章:

c++ - 继承(C++)

macos - 在 mac 上安装 OpenCV 3 不会安装 jar

c++ - cvGet2D 替代方案

ios - xcode 4.5 不允许我在 ios 5.1 设备上调试

c++ - 虚拟继承 - 为什么这个输出

c++ - 从 3 级 map 的第 2 级获取所有键

c++ - glDrawArrays访问冲突写入位置

opencv - Plt 绘图到 OpenCV 图像/Numpy 数组

c - 在 Mac OS 10.8 上使用 dev/urandom 生成非常慢的随机数

xcode4 - Xcode 4 : "No Filter Results" when attempting to add a target dependency