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

React-Native集成Firebase后iOS编译失败:-fobjc-weak不支持当前部署目标

解决React Native iOS构建报错:-fobjc-weak is not supported on the current deployment target

我之前也碰到过一模一样的问题,折腾了好一会儿才搞定,本质是部署目标版本太低导致的——-fobjc-weak这个编译选项只支持iOS 8.0及以上的系统,而你的项目或者依赖库(比如错误日志里提到的nanopb)设置的部署目标低于这个版本,就会触发构建失败。下面是具体的解决步骤:

1. 修改Podfile的部署目标

打开项目根目录下的ios/Podfile,找到开头的platform :ios行,把版本改成至少8.0(推荐设置为11.0及以上,适配React Native的最新要求):

platform :ios, '11.0'

2. 添加Post Install脚本强制统一依赖库的部署目标

有些第三方依赖库会自己设置较低的部署目标,所以需要在Podfile末尾添加一段脚本,强制所有pod的部署目标和主项目保持一致:

post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '11.0'
    end
  end
end

3. 重新安装Pods

打开终端,进入项目的ios目录,执行以下命令清理并重新安装依赖:

cd ios
pod deintegrate
pod install

4. 检查并修改Xcode项目的部署目标

打开ios/[你的项目名称].xcworkspace(注意是xcworkspace不是xcodeproj):

  • 在左侧项目导航栏选中你的项目
  • 切换到TARGETS标签页,选中你的主应用目标
  • 在Deployment Info区域,把iOS Deployment Target设置成和Podfile里一样的版本(比如11.0)

5. 清理Xcode构建缓存并重新构建

在Xcode中按下Cmd + Shift + K清理构建缓存,然后点击运行按钮,或者在终端执行:

react-native run-ios

这样应该就能解决这个构建错误了。

内容的提问来源于stack exchange,提问作者Michel Lesoinne

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 03:43:43