【问题标题】:How to fix 'boost/operators.hpp' file not found' error in react-native如何修复 react-native 中的 'boost/operators.hpp' file not found' 错误
【发布时间】:2019-10-30 01:42:05
【问题描述】:

当我使用“react-native run-ios”时,出现一些错误,“boost/operators.hpp”文件未找到。 我无法构建和运行我的项目:

react-native-cli: 2.0.1 反应原生:0.59.9 npm:6.9.0 纱线:1.16.0 节点:v12.4.0 操作系统:macOS 10.14.5 代码:10.2.1

▸ Compiling JSIDynamic.cpp

❌  /Users/lidongbo/WorkBentch/ReactNative/AwesomeProject/node_modules/react-native/React/../third-party/folly-2018.10.22.00/folly/dynamic.h:63:10: 'boost/operators.hpp' file not found

#include <boost/operators.hpp>
              ^


▸ Analyzing JSCRuntime.cpp
▸ Analyzing jsi.cpp
error Failed to build iOS project. We ran "xcodebuild" command but it exited with error code 65. To debug build logs further, consider building your app with Xcode.app, by opening AwesomeProject.xcodeproj


项目可以构建和运行。

【问题讨论】:

  • 看起来依赖项可能需要提升,试试:stackoverflow.com/questions/104322/…
  • @jman 我解决了这个问题。 boost_1_63_0.tar.gz double-conversion-1.1.6.tar.gz folly-2018.10.22.00.tar.gz glog-0.3.5.tar.gz 由于网络原因,这些文件没有完全下载。

标签: react-native boost


【解决方案1】:

如果您在升级到 react-native 0.66 后在 react-native-reanimated 中遇到此问题,请在 package.json 中更新您的 react-native-reanimated

Try "react-native-reanimated": "2.3.0-beta.2" 

不要忘记运行 yarn installnpm install 来更新您的软件包。还为ios 执行pod install 并重新启动您的服务器实例。

编辑:

react-native-reanimated@2.2.3 正式添加了对react-native@0.66 的支持,bug 更少,解决了更多问题。

同时检查issue on github.

【讨论】:

  • 这个解决了我的问题。
  • 我很高兴它为你工作@FelipeValencia
  • 请注意 RN 0.66 不能很好地与重新激活的 2.3.0-beta.2 一起使用。注意到一些 ios 应用程序冻结的错误,但希望在您阅读本文时已修复。 github.com/facebook/react-native/issues/32329
  • 具体应该添加到哪里? @HillkimHenry
  • @TJD'Alessandro 在 package.json 中定义了你的 react-native-reanimated。不要忘记运行yarn installnpm install 来更新你的包。还为ios 执行pod install 并重新启动您的服务器实例。
【解决方案2】:

这可能是由于 pod 安装不完整 - 尝试删除 ios/Pods 文件夹并在 ios 下运行 pod install

【讨论】:

  • 非常适合我。我正在使用 RN 0.61。
  • 删除和重新安装 pod 有帮助 (RN 0.63.1)
  • 这对我没有帮助,我尝试删除 ios/Pods 和 Podfile.lock,但没有成功。
【解决方案3】:

我遇到的同一问题的另一个错误是:

ios/Pods/boost-for-react-native/boost/operators.hpp:97:10: 'boost/config.hpp' file not found

要修复它,您需要清除可可豆荚并缓存并重新安装。

  1. 删除可可豆荚缓存:rm -r ~/Library/Caches/CocoaPods
  2. 删除Pods文件夹和Podfile.lock通常位于&lt;project_root&gt;/ios
  3. 重新安装 pod:pod update

【讨论】:

  • pod update 不会为我解决此问题,但按照此步骤修复了错误
【解决方案4】:

我解决了这个问题。

boost_1_63_0.tar.gz
double-conversion-1.1.6.tar.gz
folly-2018.10.22.00.tar.gz
glog-0.3.5.tar.gz

由于网络原因,这些文件没有完全下载。 文件网址是: {your proejct}/node_modules/react-native/scripts/ios-install-third-party.sh 在最低行。

【讨论】:

  • .sh 文件包含文件的下载地址。
  • 我不认为这是网络问题。我的互联网很稳定,重试了几次,看到相同的问题。
  • 我多次尝试清理和构建。我还尝试吹出 pod 文件和 Podfile.lock 并安装,但仍然没有运气。这不是网络问题。 {your proejct}/node_modules/react-native/scripts/ios-install-third-party.sh 文件在 RN 0.66.4 上对我来说也不存在
【解决方案5】:

你必须从 ios 关注的地方删除缓存;这是我清除其缓存的过程:

  1. 删除 npm 缓存:npm cache clean --force
  2. 删除所有 ios 临时文件:cd ios &amp;&amp; rm -r Pods/ Podfile.lock {yourProject}.xcworkspace
  3. 清除 Cocoapods 缓存:rm -r ~/Library/Caches/CocoaPods
  4. 现在通过 npx 安装 pod:cd .. &amp;&amp; npx pod-install

【讨论】:

    【解决方案6】:

    当我将 RN 升级到 0.64 -> 0.66 时,以下对我有帮助:

    1. 删除可可豆荚缓存:rm -r ~/Library/Caches/CocoaPods
    2. 删除 Pods 文件夹和 Podfile.lock 通常位于 /ios
    3. 删除 /ios
    4. 中的 Pod 文件夹
    5. 纱线添加 react-native-reanimated@2.2.3
    6. pod 安装

    【讨论】:

      【解决方案7】:

      所以我也收到了错误boost/operators.hpp file not found,但我的问题是在我的Podfile 中使用:path 而不是:podspec。我正在处理 integrated RN app inside of a Native iOS app,所以我手动将 pod 添加到 Podfile(从现在开始我不会这样做)。

      pod 'boost', :path =&gt; ...

      而不是

      pod 'boost', :podspec =&gt; ...

      这可能不是最常见的修复方法,但希望它可以帮助某人。

      【讨论】:

        猜你喜欢
        • 2019-06-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-06-10
        • 2020-01-09
        • 1970-01-01
        • 2020-04-10
        • 2012-03-30
        相关资源
        最近更新 更多