启动后,Boost.Build 引擎(b2)会加载实现构建系统的 Jam 代码。为此,它会搜索名为 boost-build.jam
的文件,首先在调用目录中搜索,然后在其父目录中搜索,依此类推,直到文件系统根目录,最后在环境变量 BOOST_BUILD_PATH 指定的目录中搜索。找到后,会解释该文件,并且应该通过调用 boost-build 规则来指定构建系统位置
rule boost-build ( location ? )
如果 location 是相对路径,则将其视为相对于 boost-build.jam
目录的相对路径。然后,在该 location 指定的目录和 BOOST_BUILD_PATH 中的目录中搜索名为 bootstrap.jam
的文件,该文件预计将引导构建系统。这种安排允许构建系统在没有任何命令行或环境变量设置的情况下工作。例如,如果构建系统文件位于项目根目录下的 "build-system/" 目录中,则可以在项目根目录中放置一个 boost-build.jam
,其中包含
boost-build build-system ;
在这种情况下,在项目树中的任何位置运行 b2 都会自动找到构建系统。
默认的 bootstrap.jam
在加载一些标准定义后,会加载两个 site-config.jam
和 user-config.jam
。