Boost C++ Libraries

PrevUpHomeNext

附录 A. Boost.Jam 文档

目录

构建 B2
语言
其他
历史

构建完成后安装 B2 只需将生成的执行文件复制到 PATH 中的某个位置即可。为了构建执行文件,有一组 build 引导脚本用于适应特定的环境。这些脚本接受一个可选参数,即要使用的工具集的名称。当未给出工具集时,会尝试检测可用的工具集并使用它。构建脚本接受以下参数

build [toolset]

运行脚本而不带任何参数将使您获得最大的成功机会。在 Windows 平台上的命令控制台中执行以下操作

cd jam source location
.\build.bat

在 Unix 型平台上执行以下操作

cd jam source location
sh ./build.sh

对于 Boost 分发版中包含的 Boost.Jam 源代码,Jam 源代码位置BOOST_ROOT/tools/build/v2/engine

如果脚本无法检测到合适的工具集来构建,则您的特定工具集可能无法自动检测。在这种情况下,您可以将工具集指定为第一个参数,这假设该工具集在 PATH 中 readily available。

注意

用于构建 Boost.Jam 的工具集与用于 Boost.Build 的工具集无关。使用 Boost.Build 只需要一个版本的 Boost.Jam。

支持的工具集及其是否自动检测如下所示

表 A.1. 支持的工具集

脚本

平台

工具集

检测和注释

build.bat

Windows NT、2000 和 XP

borland
Borland C++Builder (BCC 5.5)

  • 常见安装位置:“C:\Borland\BCC55
  • PATH 中的 BCC32.EXE

como
Comeau Computing C/C++

gcc
GNU GCC

gcc-nocygwin
GNU GCC

intel-win32
Intel C++ Compiler for Windows

  • PATH 中的 ICL.EXE

metrowerks
MetroWerks CodeWarrior C/C++ 7.x、8.x、9.x

  • 已配置 CWFolder 变量
  • PATH 中的 MWCC.EXE

mingw
作为 MinGW 配置的 GNU GCC

  • 常见安装位置:“C:\MinGW

msvc
Microsoft Visual C++ 6.x

  • 已配置 VCVARS32.BAT
  • 环境中存在 %MSVCDir%
  • 常见安装位置:“%ProgramFiles%\Microsoft Visual Studio”、“%ProgramFiles%\Microsoft Visual C++
  • PATH 中的 CL.EXE

vc7
Microsoft Visual C++ 7.x

  • 已配置 VCVARS32.BATVSVARS32.BAT
  • 环境中存在 %VS71COMNTOOLS%
  • 环境中存在 %VCINSTALLDIR%
  • 常见安装位置:“%ProgramFiles%\Microsoft Visual Studio .NET”、“%ProgramFiles%\Microsoft Visual Studio .NET 2003
  • PATH 中的 CL.EXE

vc8vc9
Microsoft Visual C++ 8.x 和 9.x

检测

  • 已配置 VCVARSALL.BAT
  • 环境中存在 %VS90COMNTOOLS%
  • 常见安装位置:“%ProgramFiles%\Microsoft Visual Studio 9
  • 环境中存在 %VS80COMNTOOLS%
  • 常见安装位置:“%ProgramFiles%\Microsoft Visual Studio 8
  • PATH 中的 CL.EXE

注释

  • 如果调用 VCVARSALL.BAT 来设置工具集,则会将所有额外参数传递给它,请参见下文了解这些参数是什么。例如,这可用于构建 b2 的 Win64 特定版本。请查阅 VisualStudio 文档,了解 VCVARSALL.BAT 的可能参数值。

build.sh

Unix、Linux、Cygwin 等。

acc
HP-UX aCC

  • PATH 中的 aCC
  • uname 为“HP-UX”

como
Comeau Computing C/C++

  • PATH 中的 como

gcc
GNU GCC

  • PATH 中的 gcc

intel-linux
Intel C++ for Linux

  • PATH 中的 icc
  • 常见安装位置:“/opt/intel/cc/9.0”、“/opt/intel_cc_80”、“/opt/intel/compiler70”、“/opt/intel/compiler60”、“/opt/intel/compiler50

kcc
Intel KAI C++

  • PATH 中的 KCC

kylix
Borland C++Builder

  • PATH 中的 bc++

mipspro
SGI MIPSpro C

  • uname 为“IRIX”或“IRIX64

sunpro
Sun Workshop 6 C++

  • 标准安装位置:“/opt/SUNWspro

qcc
QNX Neutrino

  • uname 为“QNX”且 PATH 中有 qcc

true64cxx
Compaq C++ Compiler for True64 UNIX

  • uname 为“OSF1

vacpp
IBM VisualAge C++

  • PATH 中的 xlc

MacOS X

darwin
Apple MacOS X GCC

  • uname 为“Darwin

Windows NT、2000 和 XP

mingw
使用 MSYS shell 的作为 MinGW 配置的 GNU GCC

  • 常见安装位置:“/mingw


构建的执行文件放置在特定于您平台的子目录中。例如,在 Intel x86 兼容芯片上运行的 Linux 中,执行文件放置在:“bin.linuxx86”中。=b2[.exe]= 可执行文件可用于调用 Boost.Build。

构建脚本支持 Boost.Jam 开发人员使用的其他调用参数以及工具集的其他设置。额外参数位于工具集之后

  • 选项参数之前的非选项形式的参数用于对工具集配置脚本进行额外设置。
  • 形如 "--option" 的参数传递给 build.jam 构建脚本。
  • 选项之后的非选项形式的参数是 build.jam 脚本的目标。
build [toolset] [setup*] [--option+ target*]

工具集之后的参数直接传递给工具集的设置脚本(如果可用且需要调用)。这允许根据需要配置工具集以执行 b2 的非默认构建。例如,使用 vc8 构建 Win64 版本。请参见上面的工具集说明,了解特定工具集何时支持此功能。

以 "--option" 形式开头的参数传递给 build.jam 脚本,并用于进一步自定义构建内容。 build.jam 脚本支持的选项和目标

---

当只想指定目标时,使用空选项。

--release

默认情况下,构建优化的可执行文件。

--debug

构建可执行文件的调试版本。构建后,它们将放置在自己的目录 "bin./platform/.debug" 中。

--grammar

通常不会重新生成 Jam 语言语法解析文件。这将强制构建语法,尽管它可能不会强制重新生成语法解析器。如果解析器已过期,它将被重新生成并随后构建。

--with-python=path

启用 Python 集成,并提供 Python 库的路径。

--gc

启用 Boehm 垃圾收集器的使用。构建将从 b2 源代码中的“boehm_gc”子目录中查找 Boehm-GC 源代码。

--duma

启用 DUMA(检测意外内存访问)调试内存分配器的使用。构建预计在 b2 源代码的“duma”子目录中找到 DUMA 源文件。

--toolset-root=path

指示用于构建的工具集所在的位置。此选项由引导 (build.batbuild.sh) 脚本传递。

--show-locate-target

用于信息,打印出它将放置构建的可执行文件的位置。

--noassert

禁用调试断言,即使构建可执行文件的调试版本。

dist

根据平台生成合适的用于分发的包(压缩存档)(如果可能)。

clean

删除所有构建的可执行文件和对象。


PrevUpHomeNext