Xcode归档React Native项目提示Library not found for -lReact-hermes错误如何解决
排查与解决步骤
- 移除手动添加的链接配置
之前手动在「Link Binary With Libraries」中添加的libReact-hermes.a需要先删除,正常启用Hermes后CocoaPods会自动配置链接规则,手动添加容易出现路径匹配错误。 - 重装Pod依赖
关闭Xcode后进入项目ios目录,依次执行以下命令清理旧依赖并重新安装:
安装完成后确认Podfile.lock文件中存在rm -rf Podfile.lock Pods MyAppp.xcworkspace pod deintegrate pod cache clean --all pod install --repo-updateReact-hermes相关条目,Pods目录下存在React-hermes文件夹。 - 修正iOS最低支持版本
RN 0.65版本启用Hermes时要求iOS最低支持版本为12.0,将Podfile中platform :ios, '11.0'修改为platform :ios, '12.0',修改后重新执行pod install生效。 - 校验Xcode构建设置
打开新生成的xcworkspace文件,在项目和Target的Build Settings中检查以下配置:- Excluded Architectures:模拟器配置项需添加
arm64,避免模拟器架构和真机架构冲突 - Library Search Paths:必须存在
$(inherited)配置且排在搜索路径首位,确保CocoaPods生成的链接配置生效 - Build Active Architecture Only:Release模式下设置为
NO,适配所有真机架构
归档前需确认顶部设备选择栏选中的是「Any iOS Device」,不能选择模拟器设备。
- Excluded Architectures:模拟器配置项需添加
- 清理Xcode缓存
执行Command+Shift+K清理构建缓存,也可以直接删除~/Library/Developer/Xcode/DerivedData目录下的对应项目文件夹,之后再执行归档操作。
内容的提问来源于stack exchange,提问作者MrYanDao
相关产品推荐
相关产品推荐

