升级Expo SDK 48至SDK 49时执行npx expo run:ios --no-install命令遇框架缺失与编译错误
升级Expo SDK 48至SDK 49时执行
npx expo run:ios --no-install命令遇框架缺失与编译错误 我最近在把Expo项目从SDK 48升级到SDK 49时碰上个头疼的编译问题,执行npx expo run:ios --no-install命令后,react-native-reanimated模块编译失败了,具体的报错信息如下:
› Compiling react-native-reanimated Pods/RNReanimated » ReanimatedRuntime.cpp ❌ (/Users/suyashkothari/Library/Developer/Xcode/DerivedData/TheJuggernaut-bjotnvxrzgzgqmejcvsocxsjleqy/Build/Products/Debug-iphonesimulator/React-hermes/reacthermes.framework/Headers/HermesExecutorFactory.h:10:10) 8 | #pragma once 9 | > 10 | #include <her
看这个报错应该是Hermes相关的框架头文件引用出了问题,我整理了几个亲测有效的解决方向,你可以挨个试试:
- 先清理Xcode的DerivedData缓存,就是报错里提到的那个
/Users/suyashkothari/Library/Developer/Xcode/DerivedData/TheJuggernaut-bjotnvxrzgzgqmejcvsocxsjleqy文件夹,直接删掉它,然后重新执行编译命令 - 检查
package.json里react-native-reanimated的版本,SDK 49要求的兼容版本是~3.3.0,如果你的版本不对,就执行npm install react-native-reanimated@~3.3.0(用yarn的话就换成yarn add react-native-reanimated@~3.3.0) - 彻底重置Pod依赖,先执行
npx pod-install --clean-install重新生成Pod配置,之后再运行npx expo run:ios --no-install - 确认你的Xcode版本是14.3及以上,SDK 49对Xcode版本有最低要求,旧版本很可能会导致框架依赖找不到的问题
内容来源于stack exchange
相关产品推荐
相关产品推荐

