我遵循了本教程:http://tilomitra.com/opencv-on-mac-osx/为Mac OSX编译OpenCV,以便在XCode 3.2.3 中使用
我在编译openCV时没有出错。但在XCode中,我为之后未找到的每个dylib和Symbols获得file was built for unsupported file format which is not the architecture being linked (i386)
。
有线索吗?
使用cmake 2.8.10和xcode 4.6.1 在mac os x lion 10.7.5上编译和运行c++opencv 2.4.4的步骤
拥有合适的工具
- 从以下位置下载opencv unixhttp://sourceforge.net/projects/opencvlibrary/files/并在任何地方解开它
- 从下载cmake.dmghttp://www.cmake.org/cmake/resources/software.html并安装
- 我假设您在os x lion上有xcode 4.6,其中包括ios sdk 6.1
- 转到xcode首选项下载并安装命令行工具,这样您就有了g++等
使用cmake编译opencv
- 转到提取的opencv文件夹
-
创建一个构建目录
mkdir build cd build cmake -D WITH_TBB=OFF -D BUILD_NEW_PYTHON_SUPPORT=OFF -D BUILD_FAT_JAVA_LIB=OFF -D BUILD_TBB=OFF -D BUILD_EXAMPLES=ON -D CMAKE_CXX_COMPILER=g++ CMAKE_CC_COMPILER=gcc -D CMAKE_OSX_ARCHITECTURES=x86_64 -D BUILD_opencv_java=OFF -G "Unix Makefiles" .. make -j8 sudo make install
-
从构建文件夹中,转到bin/并运行其中一个测试
./opencv_test_stitching
创建您自己的c++opencv xcode项目
- 启动xcode并创建一个新的xcode项目
- 为osx下的项目类型选择"命令行工具"
- 打开项目的生成设置
- 在"架构"下,将"架构"设置为64位intel。还将"有效体系结构"设置为x86_64
- 在"生成选项"下,将"C/C++编译器"设置为"默认编译器"
- 在"搜索路径"下,将"标头搜索路径"设置为/usr/local/include
- 同样在"搜索路径"下,将"库搜索路径"设置为/usr/local/lib
- 在Apple LLVM编译器4.2下-将C++标准库设置为libstd++
将编译的opencv库添加到您的项目
- 转到您所在的"生成设置"选项卡旁边的"生成阶段"选项卡
- 在"将二进制与库链接"中,单击+号并选择"添加其他"
- 点击键盘上的前斜杠/,然后输入/usr/local/lib
- 点击回车键,选择要在项目中使用的库
- 确保始终选择libopencv_core.2.4.4.dylib
- 点击回车键,您将在项目下看到选定的dylib
编写一些代码
- 首先让我们组织文件,右键单击项目蓝图图标,然后选择"新建组"
- 将新组命名为opencv或其他
- 拖动dylib并将其放入该组
- 打开main.cpp
- 从opencv附带的任何示例测试中复制代码并粘贴到此处
- 确保添加了所有必需的dylib,例如,如果将opencv_testrongtitching.cpp代码复制到main.cpp中,则需要在前面的步骤中添加以下库libopencv_core.2.4.4.dyliblibopencv_higigui.2.4.4.dyliblibopencv_stitching.2.4.4.dylib
干杯。