美文网首页
xxx was compiled with optimizati

xxx was compiled with optimizati

作者: 水中的蓝天 | 来源:发表于2021-02-28 16:10 被阅读0次

    本文源自本人的学习记录整理与理解,其中参考阅读了部分优秀的博客和书籍,尽量以通俗简单的语句转述。引用到的地方如有遗漏或未能一一列举原文出处还望见谅与指出,另文章内容如有不妥之处还望指教,万分感谢。

    翻译:XXX 使用优化编译-步进可能会行为异常;变量可能不可用。

    出现这个问题是编译优化设置不恰当造成的!

    解决办法:

    Build Setting -- > Optimization Level -- > 找到对应的 target 选择编译优化级别

    Debug 环境一般选择:None[-O0]

    注意:如果使用cocoapods管理项目,需要对Pods 同样需要以上设置

    编译优化级别介绍:

    OptimizationLevel@2x.png

    None[-O0]: 编译器不会优化代码,意味着更快的编译速度和更多的调试信息,默认在 Debug 模式下开启。
    Fast[-O,O1]: 编译器会优化代码性能并且最小限度影响编译时间,此选项在编译时会占用更多的内存。
    Faster[-O2]:编译器会开启不依赖空间/时间折衷所有优化选项。在此,编译器不会展开循环或者函数内联。此选项会增加编译时间并且提高代码执行效率。
    Fastest[-O3]:编译器会开启所有的优化选项来提升代码执行效率。此模式编译器会执行函数内联使得生成的可执行文件会变得更大。一般不推荐使用此模式。
    Fastest Smallest[-Os]:编译器会开启除了会明显增加包大小以外的所有优化选项。默认在 Release 模式下开启。
    Fastest, Aggressive Optimization[-Ofast]:启动 -O3 中的所有优化,可能会开启一些违反语言标准的一些优化选项。一般不推荐使用此模式。
    Fastest Smallest[-Os] 极小限度会影响到包大小,而且也保证了代码的执行效率,是最佳的发布选项,一般 Xcode 会在 Release 下默认选择 Fastest Smallest[-Os] 选项,较老的项目可能没有自动勾选。

    相关文章

      网友评论

          本文标题:xxx was compiled with optimizati

          本文链接:https://www.haomeiwen.com/subject/arvgfltx.html