一 单纯编译opencv,生成opencv2.framework
1.直接在根目录下输入命令
python platforms/ios/build_framework.py platforms/ios/
二 编译opencv+contrib
1.下载contrib源码(注意与opencv版本一致,否则可能会有编译错误)
2.python platforms/ios/build_framework.py –contrib [contrib_dir] platforms/ios/
contrib_dir即为所在的contrib源码目录
三 自定义生成的库名,如希望生成库名为opencv3.framework
1.修改platform/ios/build_framework.py中,将所有opencv2改成opencv3
2.在根目录中,查找所有包含opencv2的关键字并替换成opencv3:
sed -i.bak “s/opencv2/opencv3/g” grep opencv2 -rl ./
注:在macos上,-i后要加.bak,从而可以生成相应的备份文件,最后可以用命令统一删除:
find ./ -name ‘*.bak’ -type f -delete
3.查找所有名为opencv2的目录,并修改成opencv3:
find ./ -name ‘opencv2’ -type d
4.修改完成后就可以编译了
python platforms/ios/build_framework.py platforms/ios/
四 更改opencv域名
有时候可能在一个工程里包含多个版本的opencv,为了避免不同版本的opencv之间的相会干扰,最方便的解决方法是在编译opencv时更改域名,opencv的函数默认都是在域名cv下定义的,因此直接修改cv域名为其他名字便可避免多个版本的冲突。可用sed等命令批量更改。
最后生成的.framework就在ios目录下