fatal error: 'boost/preprocessor/control/expr_iif.hpp' file not found

fatal error: 'boost/preprocessor/control/expr_iif.hpp' file not found

我有一个 React Native 项目。我最近更新到 macOS Big Sur 11.3 和 XCode 版本 12.5 (12E262)。

当我在 XCode 中构建项目时,出现以下错误:

../ios/Pods/Headers/Public/Flipper-Folly/folly/functional/Invoke.h:22:10: fatal error: 'boost/preprocessor/control/expr_iif.hpp' file not found
#include <boost/preprocessor/control/expr_iif.hpp>
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.

当我浏览到 Pods 文件夹时,expr_iif.hpp 个文件存在。

我尝试删除 Pods 文件夹、Podfile.lock.xcworkspace。已删除 npm cache。然后运行pod install.

但运气不好。

这个构建时错误是由 Flipper-RSocket 和 Flipper-Folly 抛出的。

如果需要,我可以提供更多详细信息。

它完全删除了 Flipper,但这是我使用的解决方法

  • 在 PodFile 中禁用 Flipper(如此处的回答中解释:
  • 已删除 Pods 目录
  • re-运行 npx pod-install
  • 启动应用程序(npx react-native 运行-ios)

我刚遇到这个问题,当您使用不兼容的 Flipper 版本时会发生这种情况 pods。

这对我有用:

  1. 像这样更新您的 Podfile 以安装 Flipper:
use_flipper!({ 'Flipper' => '0.93.0', 'Flipper-Folly' => '2.6.7', 'Flipper-DoubleConversion' => '3.1.7' })
  1. 更新 PodfileXcode 项目的部署目标 o 12.1 或更新的项目:
platform :ios, '12.1'
  1. 删除Podfile.lock
  2. pod install --repo-update
  3. 关闭并重新打开 Xcode 项目

如果以上内容对您来说还不够,您也可以尝试修复权限:

chmod -R 755 ios/Pods/boost-for-react-native

之后错误消失了。

我没有给他准确的版本,而是使用了下一行:

use_flipper!

将其放入 Podfile 并 运行: pod install --repo-update.

对我有用!