• Xcode开发openCV for iOS 时#include <list> not found


    分析

    在做混合编译之前一定要把编译器的Compile Sources As选项改为Objective C++。

    默认的选项是According to file type,用这个的话,你后面每个不在交叉行列里的类都OK,一旦两种语言在一个文件中相互调用,

    就会报错,而且报的错怪的很,比如:找不到new,找不到delete,等等。

    iOS开发中在做人脸检测识别等图片处理时往往会用到opencv2.framework开源库,但从网上记录来看,使用该库时出现问题较多。

    “list file not found”是经常出现的错误之一,

    解决办法是: 如图对opencv for ios进行操作:

    1.点击opencv项目target

    2.点击“TARGETS”

    3.进入“Build Settings”

    4.修改“Apple LLVM compiler 4.2 - Language”中“Comlile Sources As”的值为“Objective-C++”

    或者

    1)把用到opencv的类的后缀从.m改为.mm
    2)导入libc++.dylib库

    报错:Apple Mach -O linker (

    Showing All Messages

    报错:Apple Mach -O Linker (ld: symbol(s) not found for architecture arm64)

    添加静态库报错原因:
    1.未导入框架
    2.库路径 头文件路径不对  删除
    3.Other Linker Flags 改为 -lz或-ObjC
    4.找不到库  删除重新导入静态库
    5.是否支持armv7 armv64 i386
    6.导入静态库可能与原来库冲突 .pch文件 #ifdefine包裹所有头文件(忘了,不准确,具体解决方法百度)

    解决:

    #ifdef __cplusplus

    #import <opencv2/opencv.hpp>

    #endif

  • 相关阅读:
    数据库设计
    Java各类格式转换
    Linux下如何查看tomcat是否启动/系统日志等
    string去空格
    Tomcat
    linux下的显示有中国农历的日历ccal
    Linux命令
    JSP学习-02隐式对象
    jQuery 遍历
    jQuery 隐藏效果
  • 原文地址:https://www.cnblogs.com/CityPe/p/6178715.html
Copyright © 2020-2023  润新知