cmake编译iOS/android/mac的opencv库(八)

本文详细介绍了在MacOSX10.15.4上编译OpenCV和opencv_contrib的步骤,包括下载源码、修改脚本以兼容Python3,以及执行编译命令。编译完成后,提到了如何将编译生成的动态库拖入工程并配置框架路径,同时列举了在使用过程中可能遇到的链接错误及其解决方案,如添加必要的依赖库。
摘要由CSDN通过智能技术生成

编译环境

  • 操作系统:Mac OS X 10.15.4 (19E266)
  • XCode :Version 11.4 (11E146)
  • cmake :cmake version 3.10.2
  • python:3.7.4_1

准备工作

1、下载源码

 

// 下载opencv_master源码
git clone https://github.com/opencv/opencv.git opencv_master
git checkout -b my-4.3.0 4.3.0

// 下载opencv_contrib源码
git clone https://github.com/opencv/opencv_contrib.git opencv_contrib
git checkout -b my-4.3.0 4.3.0

2、安装指定cmake版本和python版本
旧版本cmake
旧版本python

opencv for mac编译及使用步骤

  • 更改脚本
    由于脚本是基于python2写的,为了兼容python3,这里需要更改脚本,否则提示
    "ERROR: cannot use a string pattern on a bytes-like object"

1、将脚本platforms/ios/build_framework.py中的代码改成如下:
更改前

 

ret = check_output(["xcodebuild", "-version"])

更改后

 

encoding = 'utf-8'
ret = check_output(["xcodebuild", "-version"]).decode(encoding)
  • 编译命令

 

python3 platforms/osx/build_framework.py --contrib=../opencv_contrib ../output/macosx

等待数分钟,默认将生成动态库

 

image.png

  • 使用
    拖进工程中

     

    image.png

配置framework路径

 

image.png

如果提示如下错误:

 

......
"_clCreateProgramWithSource", referenced from:
.....

添加如下依赖库:
Accelerate.framework
OpenCL.framework
CoreMedia.framework
libopenjp2.a
QuartzCore.framework
AVFoundation.framework
libc++.tbd
CoreGraphics.framework
CoreImage.framework
CoreVideo.framework
Foundation.framework

opencv for iOS编译及使用步骤

opencv for android编译及使用步骤

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值