Expo React Native iOS构建失败:xcodebuild错误码65(Flipper相关)
解决Expo + React Native构建iOS时xcodebuild错误代码65(Flipper std::function缺失)
问题概述
执行npx expo run:ios时触发CommandError: Failed to build iOS project. "xcodebuild" exited with error code 65,核心错误为命名空间'std'中没有名为'function'的模板,出现在Flipper的FlipperTransportTypes.h文件中。
环境信息
- 芯片:Apple M1 Pro Chip
- macOS:Sonoma 14.3.1
- Node版本:14.19.2
- React Native版本:0.70.8
- Xcode版本:15.3
- CocoaPods版本:1.12.1
- Flipper版本:react-native-flipper@0.177.0、expo-community-flipper@47.0.2
已尝试操作:删除Xcode缓存、清理Derived Data、参考Stack Overflow同类方案无效。
解决方案
方案1:临时手动修复头文件(快速验证)
找到报错文件路径ios/Pods/FlipperKit/ios/Pods/Headers/Private/Flipper/FlipperTransportTypes.h,在文件最顶部添加:
#include <functional>
保存后重新执行npx expo run:ios。
注意:该修复在执行
pod install后会被覆盖,仅作为临时验证手段。
方案2:升级Flipper适配Xcode15
旧版本Flipper(0.177.0)未适配Xcode15的C++标准库要求,需升级到兼容版本:
- 修改
package.json中的依赖版本:{ "react-native-flipper": "^0.202.0", "expo-community-flipper": "47.0.4" } - 执行依赖更新与Pod安装:
npm install cd ios pod deintegrate pod install --repo-update - 重新运行构建命令:
npx expo run:ios
方案3:禁用Flipper(无需调试工具时使用)
如果不需要Flipper的调试功能,直接关闭可彻底解决兼容性问题:
- 打开
ios/Podfile,找到并注释/删除Flipper相关配置:# use_flipper!() # post_install do |installer| # flipper_post_install(installer) # end - 清理并重新安装Pods:
cd ios pod deintegrate pod install - 重新执行构建命令。
方案4:降级Xcode到兼容版本
React Native 0.70.8官方推荐的Xcode版本为13.4~14.x,降级Xcode到14.3可避免版本适配问题,适合长期稳定开发。
内容的提问来源于stack exchange,提问作者SosijElizabeth
相关产品推荐
相关产品推荐

