本文主要是介绍升级XCode12.3报错 Building for , but the linked and embedded framework was built for iOS + iOS Simulator,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、报错
- 报错内容大致如下
/xxxx/xxx.xcodeproj Building for iOS, but the linked and embedded framework ‘xxx.framework’ was built for iOS + iOS Simulator.
诸如此类,可能有些许不同
二、原因
WWDC 2019
推出XCFramework
启,其实 XCode 11 开始就会有这个问题,但在XCode 11
上一直是 warning 也就没太注意XCode12.3
开始,针对类似于iOS + iOS Simulator
这种多平台的包,强制使用XCFramework
架构,否则error
( 好坑啊 )
三、解决
- 这里提供三套方案,前两套比较简单,修改主项目配置即可;第三套是
Apple
建议的方法,也就是重新打包framework
为XCFramework
3.1 Validate WorkSpace
-
启用
Validate WorkSpace
,让XCode
对frameworks
进行自动化管理 -
打开项目路径 -
Build Setting > Build Options > Validate WorkSpace
-
Validate WorkSpace
设置为true
不建议使用,只能做暂时方案,万一哪天
Apple
不开心又把Validate WorkSpace
逻辑改了呢?
3.2 Build System
- 修改编译系统为以前的系统
- 打开
Files > WorkSpace Setting > Build System
- 设置
Build System
如下
不建议使用,总不能一直使用以前的构建系统吧?以后
WWDC
推出新功能了,还是得用新系统,旁边苹果的Deprecated
注释也说明了这点
3.3 Apple 建议方案
- Apple 官方对这个错误做了回复:
- 总结成一句话: 使用
XCFramework
- 这里是回答中生成 XCFramework 的教程
- 这里是回答中生成 XCFramework 的帮助文档
四、总结
Apple
之强势令人叹为观止- 我在 GitHub 新建了一个仓库,正在为大家整理 iOS 学习笔记,欢迎大家 star 支持:https://github.com/Knowledge-Precipitation-Tribe/ios_notes
- 如果方法有效请为我点赞,因为这是我持续输出的最大动力
- 感谢大家的三连 + 关注支持,我们下期再见~
这篇关于升级XCode12.3报错 Building for , but the linked and embedded framework was built for iOS + iOS Simulator的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!