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下开发环境配置

Mac下OpenCV开发环境配置(Terminal和Xcode)

从零学习openCVIOS7下的openCV开发起步(Xcode5.1.1&openCV2.49)