升级XCode12.3报错 Building for , but the linked and embedded framework was built for iOS + iOS Simulator

本文主要是介绍升级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建议的方法,也就是重新打包 frameworkXCFramework
3.1 Validate WorkSpace
  • 启用 Validate WorkSpace ,让 XCodeframeworks 进行自动化管理

  • 打开项目路径 - 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的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/360995

相关文章

idea突然报错Malformed \uxxxx encoding问题及解决

《idea突然报错Malformeduxxxxencoding问题及解决》Maven项目在切换Git分支时报错,提示project元素为描述符根元素,解决方法:删除Maven仓库中的resolv... 目www.chinasem.cn录问题解决方式总结问题idea 上的 maven China编程项目突然报错,是

linux查找java项目日志查找报错信息方式

《linux查找java项目日志查找报错信息方式》日志查找定位步骤:进入项目,用tail-f实时跟踪日志,tail-n1000查看末尾1000行,grep搜索关键词或时间,vim内精准查找并高亮定位,... 目录日志查找定位在当前文件里找到报错消息总结日志查找定位1.cd 进入项目2.正常日志 和错误日

Debian 13升级后网络转发等功能异常怎么办? 并非错误而是管理机制变更

《Debian13升级后网络转发等功能异常怎么办?并非错误而是管理机制变更》很多朋友反馈,更新到Debian13后网络转发等功能异常,这并非BUG而是Debian13Trixie调整... 日前 Debian 13 Trixie 发布后已经有众多网友升级到新版本,只不过升级后发现某些功能存在异常,例如网络转

Ubuntu如何升级Python版本

《Ubuntu如何升级Python版本》Ubuntu22.04Docker中,安装Python3.11后,使用update-alternatives设置为默认版本,最后用python3-V验证... 目China编程录问题描述前提环境解决方法总结问题描述Ubuntu22.04系统自带python3.10,想升级

解决升级JDK报错:module java.base does not“opens java.lang.reflect“to unnamed module问题

《解决升级JDK报错:modulejava.basedoesnot“opensjava.lang.reflect“tounnamedmodule问题》SpringBoot启动错误源于Jav... 目录问题描述原因分析解决方案总结问题描述启动sprintboot时报以下错误原因分析编程异js常是由Ja

解决Nginx启动报错Job for nginx.service failed because the control process exited with error code问题

《解决Nginx启动报错Jobfornginx.servicefailedbecausethecontrolprocessexitedwitherrorcode问题》Nginx启... 目录一、报错如下二、解决原因三、解决方式总结一、报错如下Job for nginx.service failed bec

Java报错:org.springframework.beans.factory.BeanCreationException的五种解决方法

《Java报错:org.springframework.beans.factory.BeanCreationException的五种解决方法》本文解析Spring框架中BeanCreationExce... 目录引言一、问题描述1.1 报错示例假设我们有一个简单的Java类,代表一个用户信息的实体类:然后,

解决若依微服务框架启动报错的问题

《解决若依微服务框架启动报错的问题》Invalidboundstatement错误通常由MyBatis映射文件未正确加载或Nacos配置未读取导致,需检查XML的namespace与方法ID是否匹配,... 目录ruoyi-system模块报错报错详情nacos文件目录总结ruoyi-systnGLNYpe

Linux升级或者切换python版本实现方式

《Linux升级或者切换python版本实现方式》本文介绍在Ubuntu/Debian系统升级Python至3.11或更高版本的方法,通过查看版本列表并选择新版本进行全局修改,需注意自动与手动模式的选... 目录升级系统python版本 (适用于全局修改)对于Ubuntu/Debian系统安装后,验证Pyt

MySQL 升级到8.4版本的完整流程及操作方法

《MySQL升级到8.4版本的完整流程及操作方法》本文详细说明了MySQL升级至8.4的完整流程,涵盖升级前准备(备份、兼容性检查)、支持路径(原地、逻辑导出、复制)、关键变更(空间索引、保留关键字... 目录一、升级前准备 (3.1 Before You Begin)二、升级路径 (3.2 Upgrade