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

React Native Xcode构建报错:Undefined symbol相关问题求助

解决M2 MacBook Air + Xcode14.2 iOS模拟器构建失败(Undefined symbol)的方案

核心原因

该报错属于Swift与Objective-C桥接时的架构不兼容问题,M2芯片为arm64架构,Xcode14.2的模拟器在架构处理逻辑上存在特定冲突,导致符号链接失败。

可尝试的解决步骤

1. 统一项目架构配置

  • 打开Xcode进入项目Build Settings:
    • 搜索Architectures,将其设置为Standard Architectures (arm64, x86_64)
    • 若存在Valid Architectures选项,手动添加arm64和x86_64
    • 搜索Excluded Architectures,在Debug/Release模式下,为Any iOS Simulator SDK单独设置排除x86_64(真机配置保持默认)

2. 彻底清理构建缓存

  • 执行Xcode菜单Product > Clean Build Folder(快捷键Cmd+Shift+K)
  • 删除项目DerivedData:前往~/Library/Developer/Xcode/DerivedData,删除当前项目对应的文件夹
  • 重启Xcode后重新构建

3. 修复CocoaPods依赖的架构(若使用Pods)

  • 打开项目根目录的Podfile,添加以下配置:
    post_install do |installer|
      installer.pods_project.build_configurations.each do |config|
        config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "x86_64"
        config.build_settings["ONLY_ACTIVE_ARCH"] = "NO"
      end
    end
    
  • 执行pod install重新安装依赖

4. 直接用arm64原生架构运行模拟器

M2芯片原生支持arm64模拟器,无需x86_64转译:

  • 在VSCode中直接执行yarn ios,去掉arch -x86_64前缀
  • 确保Xcode选择的是arm64版本的模拟器设备(如“iPhone 14”系列)

5. 升级Xcode版本(备选)

Xcode14.2对M2芯片模拟器的支持存在已知缺陷,升级到Xcode14.3及以上版本,能更好适配arm64架构的模拟器环境。

内容的提问来源于stack exchange,提问作者김지엽

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 14:52:40