Xcode 14因armv7架构弃用导致Unity iOS项目构建失败求助
解决Unity + Xcode 14 iOS 16调试架构冲突问题
一、从Unity源头移除armv7架构(最优方案)
直接在Unity导出前调整配置,避免后续Xcode修改:
- 打开Unity的
Build Settings,切换到iOS平台 - 点击
Player Settings,进入Other Settings选项卡 - 在
Architecture区域,取消勾选ARMv7,仅保留ARM64 - 将
Target minimum iOS Version设置为iOS 11.0及以上(iOS 11+已不再依赖armv7架构) - 重新导出Xcode项目
二、修改已导出的Xcode 14项目配置
如果已经导出项目,直接调整Xcode设置:
- 打开Xcode项目,选中根项目(蓝色图标)
- 切换到
Build Settings标签,搜索Architectures - 将
Architectures设置为ARM64,删除所有armv7相关项 - 搜索
Valid Architectures,仅保留ARM64(Xcode 14可能默认无此选项,无需额外操作) - 搜索
Build Active Architecture Only,Debug模式下设为Yes,Release模式按需设置 - 确认
Deployment Target为iOS 11.0+,与Unity设置保持一致
三、处理第三方插件的armv7依赖
若报错源于第三方插件包含armv7架构库:
- 找到插件对应的
.a或.framework文件 - 用终端命令
lipo -info [文件路径]查看支持的架构 - 若包含armv7,要么联系开发者获取仅支持ARM64的版本,要么用
lipo -remove armv7 [源文件路径] -output [输出文件路径]手动移除armv7架构 - 替换项目中的旧库文件后重新编译
四、Unity版本适配建议
优先使用2021.3 LTS及以上版本的Unity,这类版本已针对Xcode 14做适配,默认生成符合要求的架构配置,减少手动修改成本。
内容的提问来源于stack exchange,提问作者curlydev
相关产品推荐
相关产品推荐

