You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Xcode 13编译iOS模拟器报错:链接framework为iOS平台构建如何解决

Xcode 13 iOS模拟器架构冲突报错解决方案

以下为Xcode 13移除Validate Workspace功能后的可落地解决方法:

  • 配置排除架构
    打开项目主Target和Project级别对应的Build Settings,搜索Excluded Architectures,在Debug模式下为Any iOS Simulator SDK添加arm64值。如果使用CocoaPods管理依赖,需要在Podfile中添加如下配置避免执行pod install后配置被覆盖:
    post_install do |installer|
      installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
          config.build_settings['EXCLUDED_ARCHS[sdk=iphonesimulator*]'] = 'arm64'
        end
      end
    end
    
    修改后执行pod install重新生成Pod项目即可生效。
  • 调整仅编译活跃架构配置
    在Build Settings中搜索Build Active Architecture Only,Debug模式设置为Yes,Release模式设置为No,该配置在搭载Apple Silicon芯片的Mac上生效更明显。
  • 调整Framework嵌入属性
    检查项目Build Phases下的Embed Frameworks配置项,确认冲突Framework的嵌入属性:如果是静态Framework选择「Do Not Embed」,动态Framework选择「Embed & Sign」,错误的嵌入属性也会触发该架构报错。
  • 生成XCFramework兼容多架构
    如果冲突的Framework为自行维护的源码项目,可通过xcodebuild命令编译生成同时支持iOS设备、x86_64模拟器、arm64模拟器的XCFramework替换原有Framework,核心编译命令示例:
    # 编译iOS设备架构
    xcodebuild build -project YourProject.xcodeproj -scheme YourScheme -sdk iphoneos BUILD_DIR=./build
    # 编译iOS模拟器架构
    xcodebuild build -project YourProject.xcodeproj -scheme YourScheme -sdk iphonesimulator BUILD_DIR=./build
    # 合并为XCFramework
    xcodebuild -create-xcframework -framework ./build/Release-iphoneos/YourFramework.framework -framework ./build/Release-iphonesimulator/YourFramework.framework -output ./YourFramework.xcframework
    
  • Rosetta模式临时兼容
    如果使用的是Apple Silicon芯片Mac,且第三方Framework暂无适配arm64模拟器的版本,可右键Finder中的Xcode,点击「显示简介」,勾选「使用Rosetta打开」,重启Xcode后编译运行即可临时规避该问题。

内容的提问来源于stack exchange,提问作者Anthony Demanuele

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 08:24:03