【问题标题】:What do I do about "batch recursion exceeds stack limits" when running Boost.Build?运行 Boost.Build 时出现“批量递归超出堆栈限制”怎么办?
【发布时间】:2012-09-11 04:22:47
【问题描述】:

我使用的是 64 位 Win 7。

我下载了最新的 Boost 源,为了收集二进制文件,我必须通过低谷 Boost.Build 过程。我还从官方网站上获取了最新的 Boost.Build,当我 跑了./bootstrap我报错了:

******  B A T C H   R E C U R S I O N  exceeds STACK limits ******
Recursion Count=592, Stack Usage=90 percent
******       B A T C H   PROCESSING IS   A B O R T E D      ******

我有 i5,8 GB 内存。

是否有其他方法可以获取用于 GCC (G++) 的二进制文件。我知道有 Boostpro,但那只能给我 VS 二进制文件。

【问题讨论】:

    标签: c++ boost-build


    【解决方案1】:

    在以下情况下发生此错误:

    • 您正在使用来自 *.tar.bz2 软件包的源代码进行 Windows 构建,并且
    • 您没有指定工具集。

    要么使用*.zip源包指定工具集(bootstrap.sh msvc或其他)解决了这个问题(至少对我来说)。

    【讨论】:

      【解决方案2】:

      Jesse Good 和 DevSolar 已经给出了答案

      但需要一些组合

      适用于 Windows + MinGW (gcc)

      1) 在CMD中,在Boost的根目录下,输入

      .\bootstrap.bat gcc
      

      gcc 参数将停止递归错误

      2) 那么在同一目录下会生成b2

      最简单的安装方式是

      .\b2 toolset=gcc --prefix="path\of\compiled\files\" install
      

      toolset=gcc 参数是必须的,否则.dll 编译会失败

      3) 添加

      "path\of\compiled\files\include\boost_?_??"
      "path\of\compiled\files\lib"
      

      到系统路径(你可以谷歌“添加系统路径变量win”,Win 7不需要重启来激活设置)

      【讨论】:

      • 使用 ".\bootstrap.bat gcc" 解决了递归问题,谢谢
      【解决方案3】:
      1. 转到 boost 目录中的 tools\build\v2\ 并从那里运行引导程序。

      2. 从与上面相同的目录运行b2 toolset=gcc install --prefix=PREFIX,其中 PREFIX 是您希望安装 boost.build 的位置。

      3. PREFIX\bin 添加到您的 PATH 环境变量中,然后从 boost 根目录键入类似以下内容(这是一个示例,根据需要更改选项,要查找选项列表,请键入b2 --help):

      b2 工具集=gcc 地址模型=64 变体=发布链接=静态,共享 threading=multi --layout=system target-os=windows

      希望对您有所帮助。

      【讨论】:

        【解决方案4】:

        Boost 版本过时并且不支持当前工具集时,我已经看到这种情况发生。比如boost-1.57.0不支持VC15编译器,给我你的错误信息。

        简单的解决方案是使用最新版本的Boost

        【讨论】:

          猜你喜欢
          • 2019-03-06
          • 2014-04-01
          • 2019-10-13
          • 1970-01-01
          • 2013-06-09
          • 1970-01-01
          • 1970-01-01
          • 2022-01-21
          • 1970-01-01
          相关资源
          最近更新 更多