美文网首页
iOS 打包上线 bitcode问题

iOS 打包上线 bitcode问题

作者: 贝勒老爷 | 来源:发表于2019-07-22 17:24 被阅读0次

    iOS 打包上线 All object files and libraries for bitcode must be generated from…报错

    错误现象:


    8BA8575C-5E6F-4A8A-8BAA-6D886AE81B45.png

    一、App的开发对bitcode的支持

      //现在开发的iOS应用,有一个bitcode选项,通常我们的做法是在设置内,设置bitcode为YES;
      //另外,App最好添加下面设置“other c flags 添加-fembed-bitcode”;
    

    二、静态库(.a)对bitcode的支持

    第一,在工程内设置bitcode为YES;


    2230857B-1DA9-4342-9DEC-29363C130762.png

    第二、如果仅仅设置bitcode为YES,那么在联机运行没问题;
    在你需要打包上线时,就会出现如上的错误,解决办法如下:

    修改:other c flags 添加-fembed-bitcode


    2330EB21-431E-4D9C-A453-00C862CABEEE.png

    第三、重新打包编译,替换到工程即可;

    注意:

    确保打包的时候使用的是fembed-bitcode, 而不是fembed-bitcode-maker
    
    fembed-bitcode-maker:只是简单的标记一下在archive出来的二进制中bitcdoe所在的位置。
    fembed-bitcode: 真的会生成bitcode指令,并且嵌入到二进制中,这个设置不止要在app中设置,同样你也必须在编译静态链接库的时候使用。而且需要主题的是该参数系统只默认在archive模式下会添加
    //需要注意的是bitcode只默认在archive下编译。在debug和release下并不会。
    
    如果您开发的是app那么走正常的打包archive流程就好了。如果你正在开发.a静态库或者framework,请注意打包方式设置为archive,或者在打包脚本中加入-fembed-bitcode参数。如果需要的话,需要在Build Settings中打开 DEPLOYMENT_POSTPROCESSING=YES,设置Strip Style为debugging。
    
    

    相关文章

      网友评论

          本文标题:iOS 打包上线 bitcode问题

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