RN 0.56 iOS项目编译报错:'React/RCTBridgeModule.h'找不到及后续问题
解决老旧React Native iOS项目迁移后的编译错误(RCTBridgeModule.h缺失/ glog文件找不到)
一、修复glog文件缺失问题
老旧RN项目的第三方原生依赖常因npm install不完整导致文件缺失,优先处理这个问题:
用RN自带脚本重新安装第三方依赖:
cd node_modules/react-native ./scripts/ios-install-third-party.sh cd third-party/glog-0.3.4 ./configure该脚本会自动下载并补全glog等依赖的完整文件,解决src目录下.cc文件缺失的问题。
若脚本执行失败,手动替换glog包:
下载对应版本的glog-0.3.4压缩包,解压后覆盖node_modules/react-native/third-party/下的glog-0.3.4文件夹,确保src目录所有文件齐全。
二、解决'React/RCTBridgeModule.h'找不到的问题
glog修复后,调整Xcode的头文件搜索路径:
配置Build Settings中的头文件搜索路径:
- 打开Xcode项目,进入Build Settings,找到
Header Search Paths。 - 添加以下路径(根据项目结构调整,确保路径指向正确):
将这些路径的搜索方式设为recursive(递归搜索)。$(SRCROOT)/../node_modules/react-native/React $(SRCROOT)/../node_modules/react-native/React/Base $(SRCROOT)/../node_modules/react-native/Libraries/Components - 确认
Framework Search Paths包含$(SRCROOT)/../node_modules/react-native/React。
- 打开Xcode项目,进入Build Settings,找到
清理缓存并重新构建:
# 清理Xcode派生数据 rm -rf ~/Library/Developer/Xcode/DerivedData # 清理iOS项目构建文件 cd ios rm -rf build # 若项目使用CocoaPods,重新安装依赖 pod install检查链接库配置:
确认Build Phases > Link Binary With Libraries中已添加libReact.a(或对应RN版本的React.framework),且所有RN子模块(如RCTCore、RCTBridge)都已正确链接,状态设为Required。
三、额外验证步骤
- 确认Xcode命令行工具版本与Xcode一致:打开
Xcode > Preferences > Locations,将Command Line Tools设为Xcode 12.5。 - 重新安装npm依赖,避免安装不完整:
rm -rf node_modules package-lock.json npm install
内容的提问来源于stack exchange,提问作者Jacki
相关产品推荐
相关产品推荐

