在新下载的boost中缺少Jam文件

时间:2016-07-18 09:52:07

标签: c++ windows boost

我虔诚地跟随http://www.boost.org/doc/libs/1_61_0/more/getting_started/windows.html

下载并解压缩1.61版本的boost后,我尝试使用本指南第5.1节中的说明从源代码构建它。 所以

bootstrap
.\b2

但后来我收到了错误:

error: Unable to load Jamfile.
error: Could not find a Jamfile in directory 'libs/config/checks/architecture'.
error: Attempted to find it with pattern '[Bb]uild.jam [Jj]amfile.v2 [Jj]amfile [Jj]amfile. [Jj]amfile.jam'.
error: Please consult the documentation at 'http://www.boost.org'.

Trac issue #12173 of boost完全相同。 出了什么问题?如何让bjam找到卡纸文件?

2 个答案:

答案 0 :(得分:1)

有点过时,但我能够通过获取config子模块来实现这一点:

git submodule update --init libs/config

似乎配置模块是某些其他模块的未列出先决条件。

答案 1 :(得分:0)

当“ bootstrap.jam”试图从错误的路径加载构建系统的模块时,可能会发生此错误。

确保将this.output.files设置为“ boost * / tools / build”,并且未设置BOOST_BUILD_PATH

错误配置示例:

BOOST_ROOT

固定配置示例:

libtorrent-rasterbar-1.2.0>set BOOST_BUILD_PATH=..\boost_1_68_0
libtorrent-rasterbar-1.2.0>set BOOST_ROOT=..\boost_1_68_0
libtorrent-rasterbar-1.2.0>b2
Jamroot.jam:1: syntax error at EOF
CXXFLAGS =
LDFLAGS =
OS = NT
building boost from source directory:  ..\boost_1_68_0
boost_1_68_0/tools/build/src/build\project.jam:262: in find-jamfile from module project
error: Unable to load Jamfile.
error: Could not find a Jamfile in directory '../boost_1_68_0/libs/config/checks/architecture'.
error: Attempted to find it with pattern '[Bb]uild.jam [Jj]amfile.v2 [Jj]amfile [Jj]amfile. [Jj]amfile.jam'.
error: Please consult the documentation at 'http://www.boost.org'.
boost_1_68_0/tools/build/src/build\project.jam:325: in load-jamfile from module project
boost_1_68_0/tools/build/src/build\project.jam:64: in load from module project
boost_1_68_0/tools/build/src/build\project.jam:89: in load-used-projects from module project
boost_1_68_0/tools/build/src/build\project.jam:75: in load from module project
boost_1_68_0/tools/build/src/build\project.jam:89: in load-used-projects from module project
boost_1_68_0/tools/build/src/build\project.jam:75: in load from module project
boost_1_68_0/tools/build/src/build\project.jam:145: in project.find from module project
boost_1_68_0/tools/build/src\build-system.jam:618: in load from module build-system
..\boost_1_68_0\tools\build\src/kernel\modules.jam:295: in import from module modules
..\boost_1_68_0\tools\build\src/kernel/bootstrap.jam:139: in boost-build from module
..\boost_1_68_0\boost-build.jam:17: in module scope from module