美文网首页SwiftUI
关于Build Active Architecture Only

关于Build Active Architecture Only

作者: taisheng2017 | 来源:发表于2021-10-26 15:44 被阅读0次

    只为记录项目中问题。

    问题描述:项目开发当中,遇到切换debug和release环境时,在模拟器出现了debug运行正常,release运行报错:

    /Users/jiangtaisheng/Documents/cmusic/Bravo/Pods/WechatOpenSDK/OpenSDK1.8.7.1/libWeChatSDK.a(WechatAuthSDK.o), building for iOS Simulator, but linking in object file built for iOS, file '/Users/jiangtaisheng/Documents/cmusic/Bravo/Pods/WechatOpenSDK/OpenSDK1.8.7.1/libWeChatSDK.a' for architecture arm64
    clang: error: linker command failed with exit code 1 (use -v to see invocation)
    

    此时牵引出一个xcode的一个属性 “Build Active Architecture Only”
    这个属性设置为yes,是为了debug的时候编译速度更快,它只编译当前的architecture版本。而设置为no时,会编译所有的版本。
    一般debug的时候可以选择设置为yes,release的时候要改为no,以适应不同设备。
    所以在release环境下,Build Active Architecture Only 为 no,他会构建所有的版本,而模拟器不支持 arm64架构 所以会出现 “libWeChatSDK.a' for architecture arm64”的报错。处理方法是:

       1.在真机上跑,release 环境。
    
       2.设置Build Active Architecture Only 属性 release也设置成Yes。就可以了。上线以后会不会有问题,未知,,需慎行。
    

    相关文章

      网友评论

        本文标题:关于Build Active Architecture Only

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