【问题标题】:Trouble installing Boost C++安装 Boost C++ 时遇到问题
【发布时间】:2015-03-01 08:01:24
【问题描述】:

现在,我正在尝试在我的计算机上安装 boost,这是一台运行 Mavericks 的 Mac。我已经下载boost并解压到目录中

$HOME/local/src/

解压后,我把它移到了boost源目录里面的一个新目录:

tools/build/v2

然后我执行了

./boostrap.sh --with-toolset=gcc

这一切都很顺利。下一步是问题开始的地方:在 src 文件中,我执行了以下命令:

tools/build/v2/boost_1_57_0/b2 install --prefix=PREFIX --toolset=gcc --with-program_options --with-filesystem

然后它返回以下错误:

Unable to load Boost.Build: could not find "boost-build.jam"

---------------------------------------------------------------
BOOST_ROOT must be set, either in the environment, or 
on the command-line with -sBOOST_ROOT=..., to the root
of the boost installation.

它说它找不到 boost-build.jam,但我在 Finder 中打开了该文件夹,我在我的 boost_1_57_0 文件夹中看到了 boost-build.jam。我能做些什么来执行这个命令?难道我做错了什么?如果它运行正确,我应该有一个 PREFIX/include 目录,其中包含用于 boost 的头文件。我该怎么做才能得到这个?如果有帮助,这里是 Boost 网站的链接:

http://www.boost.org

另外,我已经找到了这个关于如何安装 Boost 的页面:

How do you install Boost on MacOS?

如果上面的代码运行正常,这个用户描述的方法会给出相同的结果吗?提前谢谢你。

【问题讨论】:

    标签: c++ macos boost installation


    【解决方案1】:

    安装 brew:

    ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
    

    然后做:

    brew install boost-build
    

    之后,您将在/usr/local/bin/bjam 中拥有bjam 可执行文件。

    【讨论】:

    • 我应该在哪个文件夹中安装 boost-build--src、v2 或 boost_1_57_0?
    • brew 会将其置于/usr/local/Cellar/boost-build/
    • 好的——我用 brew 做到了,但我还是有点困惑。使用 brew 进行的 boost-build 是否应该替换我上面编写的非功能代码,还是应该使我上面编写的代码工作?我再次运行 tools/build/v2/boost_1_57_0/b2 install --prefix=PREFIX --toolset=gcc --with-program_options --with-filesystem ,它给了我同样的错误(对不起——我是新手Mac。我最后两台电脑是戴尔)。
    • brew安装应该会替换你的代码,你不需要手动下载或从源代码编译,brew会为你做。
    【解决方案2】:

    感谢 elyase 的回复。我还找到了一种方法来解决上面发布的不使用 brew 的问题。我犯了一个错误,在我的 src 文件夹中创建了一个新的 tools/build/v2 文件夹——但是,我应该 cd 到已经在下载的 boost 文件夹中的 tools/build 文件夹中。此外,在较新版本的 boost 中,没有 v2 文件夹——所以只需使用

    tools/build/b2 install --prefix=PREFIX --toolset=gcc --with-program_options --with-filesystem
    

    希望这能帮助遇到类似问题的 Mac 新手(如我)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-01-12
      • 1970-01-01
      • 2014-09-11
      • 2013-12-24
      • 2020-02-27
      • 2018-02-25
      • 2011-06-06
      相关资源
      最近更新 更多