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

Mac M2升级Sonoma14.3/Xcode15.2后新建RN项目报CocoaAsyncSocket未找到

React Native 0.73.5 iOS构建报错:CocoaAsyncSocket库未找到

原因分析

  1. Xcode 15链接器行为变更:Xcode 15默认启用了新链接器模式,旧版本CocoaAsyncSocket未适配该模式,导致链接阶段无法定位库文件。
  2. RN 0.73.5适配缺口:React Native 0.73.5的默认Podfile配置未针对Xcode 15的链接器调整做适配,依赖库的链接路径未正确注入。
  3. Pod缓存残留损坏:本地Pod仓库中可能存在损坏的CocoaAsyncSocket缓存副本,常规清理操作未彻底清除。

解决步骤

1. 彻底清理所有依赖缓存

执行以下命令清除残留的缓存和无效文件:

# 清理所有Pod缓存
pod cache clean --all

# 进入iOS目录清理Pod相关文件
cd ios
rm -rf Podfile.lock Pods
cd ..

# 清理Node.js依赖和包管理器缓存
rm -rf node_modules
yarn cache clean --force # 使用npm则替换为 npm cache clean --force

2. 修改Podfile适配Xcode 15链接器

打开ios/Podfile,在文件末尾添加以下配置,强制使用经典链接器并修复CocoaAsyncSocket的构建设置:

post_install do |installer|
  installer.pods_project.targets.each do |target|
    # 为所有目标启用经典链接器,适配Xcode 15
    target.build_configurations.each do |config|
      config.build_settings['OTHER_LDFLAGS'] = '-ld_classic'
    end

    # 确保CocoaAsyncSocket的构建配置正确
    if target.name == 'CocoaAsyncSocket'
      target.build_configurations.each do |config|
        config.build_settings['BUILD_LIBRARY_FOR_DISTRIBUTION'] = 'YES'
      end
    end
  end
end

3. 重新安装依赖并构建

# 安装Node.js依赖
yarn install # 使用npm则替换为 npm install

# 安装Pods并启动项目
cd ios
pod install
cd ..
npx react-native run-ios

4. 兜底检查Xcode项目配置

如果上述步骤无效,手动验证Xcode项目配置:

  • 打开iOS目录下的.xcworkspace文件
  • 选中项目Target,进入Build Phases > Link Binary With Libraries,确认CocoaAsyncSocket.framework已存在(需选择Pods目录下的版本)
  • 进入Build Settings,搜索Other Linker Flags,确保已添加-ld_classic参数

额外方案:指定兼容版本的CocoaAsyncSocket

若仍有问题,直接在Podfile中锁定兼容Xcode 15的版本:

pod 'CocoaAsyncSocket', '~> 7.6.5'

添加后重新执行pod install即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 15:40:27