more/getting_started/detail/build-from-source-head.rst
2006-12-22 14:52:22 +00:00

5.2 KiB

Boost.Build is a text-based system for developing, testing, and installing software. To use it, you'll need an executable called bjam.

Get bjam

bjam is the that drives the Boost Build system. To build Boost binaries, you'll invoke bjam from the Boost root.

Boost provides pre-compiled bjam executables_ for a variety of platforms. Alternatively, you can build bjam yourself using these instructions.

Identify Your Toolset

First, find the toolset corresponding to your compiler in the following table.

Toolset Name Vendor Notes
acc Hewlett Packard Only very recent versions are known to work well with Boost
borland Borland
como Comeau Computing Using this toolset may require configuring another toolset to act as its backend
cw Metrowerks/FreeScale The CodeWarrior compiler. We have not tested versions of this compiler produced since it was sold to FreeScale.
dmc Digital Mars As of this Boost release, no version of dmc is known to handle Boost well.
darwin Apple Computer Apple's version of the GCC toolchain with support for Darwin and MacOS X features such as frameworks.
gcc The Gnu Project Includes support for Cygwin and MinGW compilers.
hp_cxx Hewlett Packard Targeted at the Tru64 operating system.
intel Intel
kylix Borland
msvc Microsoft
qcc QNX Software Systems
sun Sun Only very recent versions are known to work well with Boost.
vacpp IBM The VisualAge C++ compiler.

If you have multiple versions of a particular compiler installed, you can append the version number to the toolset name, preceded by a hyphen, e.g. msvc-7.1 or gcc-3.4.

Note

if you built bjam yourself, you may have selected a toolset name for that purpose, but that does not affect this step in any way; you still need to select a Boost.Build toolset from the table.

Select a Build Directory

Boost.Build will place all intermediate files it generates while building into the build directory. If your Boost root directory is writable, this step isn't strictly necessary: by default Boost.Build will create a bin.v2/ subdirectory for that purpose in your current working directory.

Invoke bjam

Change your current directory to the Boost root directory and invoke bjam as follows:

bjam --build-dir=build-directory_ --toolset=toolset-name_ stage