iOS下OpenCV开发配置的两个常见问题(sign和link)
Posted 负赑屃
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS下OpenCV开发配置的两个常见问题(sign和link)相关的知识,希望对你有一定的参考价值。
本文为作者原创,转载请注明出处(http://www.cnblogs.com/mar-q/)by 负赑屃
先上可以运行官方推荐的《OpenCV for ios samples》的demo链接:https://github.com/Itseez/opencv_for_ios_book_samples.git
一、关于真机开发的限制:
iOS下进行OpenCV开发,如果涉及到摄像头,需要使用真机运行,所以需要添加开发者账号,如果是免费的,每周可以运行7次(如果资金有限就多注册几个可用账号吧)general-add an account。
二、照着官方说明做却没成功
如果自己建立的项目,按照OpenCV的官方说明去配置,基本没有问题,唯一要说明一点:OpenCV提供的framework是c和c++混合的,所以在xcode中编写OpenCV时候也要xcode/C++混合编译,如果你在Xcode中编写的工程中既有OC代码,又有C++代码,在默认配置下,会报出如:
"std::__1::__vector_base_common::__throw_length_error() const", referenced from: cv::SparseMat::resizeHashTab(unsigned long) in opencv2(matrix.o) std::__1::vector>::__append(unsigned long) in opencv2(matrix.o) std::__1::vector>::__append(unsigned long) in opencv2(matrix.o)
等等一堆的链接错误,解决方法有两个:
1. 把项目中某个后缀为.m的文件改为.mm。因为.mm文件除了可以包含Objective-C和C代码以外还可以包含C++代码;
2. 设置编译器:找到工程的Build Settings,将compile source as设置为object-c++运行即可。
以上是关于iOS下OpenCV开发配置的两个常见问题(sign和link)的主要内容,如果未能解决你的问题,请参考以下文章
Linux(ubuntu)下配置Opencv3.1.0开发环境的详细步骤
1.Python3.5+Pyqt5+PyCharm+Opencv3.3+Qtdesigner开发环境配置
Windows下配置Qt 5.8+opencv 3.1.0开发环境
QT creator+OpenCV2.4.2+MinGW 在windows下开发环境配置