opencv for ios 配置后#import 报错:file not found问题(opencv3.2.0)

时间:2024-03-28 18:52:55
本人小白,第一次写博客,有啥不对的地方各位看官见谅···

在配置opencv for ios时出现了问题,如下

按照网上的配置,将opencv.framework使用Link Binary With Libraries导入程序后,在ViewController.mm(将.m改为.mm以运行c++代码)中#import <opencv2/opencv.hpp>报错:file not found
opencv for ios 配置后#import <opencv2/opencv.hpp>报错:file not found问题(opencv3.2.0)
解决方法:在项目中右键Add Files To “xxx”,选择opencv2.framework,选择左下角Options,勾选Destination: Copy items if needed,添加后错误解决。
opencv for ios 配置后#import <opencv2/opencv.hpp>报错:file not found问题(opencv3.2.0)
opencv for ios 配置后#import <opencv2/opencv.hpp>报错:file not found问题(opencv3.2.0)
同时在#import时需要将opencv的文件放在前面,不然也会出现错误:
Expected identifier 
opencv for ios 配置后#import <opencv2/opencv.hpp>报错:file not found问题(opencv3.2.0)
opencv for ios 配置后#import <opencv2/opencv.hpp>报错:file not found问题(opencv3.2.0)
在文件内发现描述:
#  warning Detected Apple 'NO' macro definition, it can cause build conflicts. Please, include this header before any Apple headers. 

后测试发现如果不勾选Destination: Copy items if needed,将opencv2.framework导入后也会出现#import <opencv2/opencv.hpp>报错:file not found。

 在网上搜索Copy items if needed功能为:勾选后,会自动复制一份相同的文件到你的工程中,引用的是复制后在工程目录中的位置。若不勾选,文件的引用位置则是文件的原位置(不建议这样做,如果该文件在工程外被删除,工程则无法引用,所以还是复制一份到工程中,这样更利于工程文件的管理)。