.. Copyright David Abrahams 2006. Distributed under the Boost .. Software License, Version 1.0. (See accompanying .. file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) Install Boost.Build ................... Boost.Build_ is a text-based system for developing, testing, and installing software. First, you'll need to build and install it. To do this: 1. Go to the directory ``tools``\ |/|\ ``build``\ |/|. 2. Run |bootstrap| 3. Run ``b2 install --prefix=``\ *PREFIX* where *PREFIX* is the directory where you want Boost.Build to be installed 4. Add *PREFIX*\ |/|\ ``bin`` to your PATH environment variable. .. _Boost.Build: ../../tools/build/index.html .. _Boost.Build documentation: Boost.Build_ .. _toolset: .. _toolset-name: Identify Your Toolset ..................... First, find the toolset corresponding to your compiler in the following table (an up-to-date list is always available `in the Boost.Build documentation`__). __ https://boostorg.github.io/build/manual/develop/index.html#bbv2.reference.tools .. Note:: If you previously chose a toolset for the purposes of `building b2`_, you should assume it won't work and instead choose newly from the table below. .. _building b2: ../../doc/html/bbv2/installation.html +-----------+--------------------+------------------------------------------------------------+ |Toolset |Vendor |Notes | |Name | | | +===========+====================+============================================================+ |``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. | +-----------+--------------------+------------------------------------------------------------+ |``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 | | +-----------+--------------------+------------------------------------------------------------+ |``msvc`` |Microsoft | | +-----------+--------------------+------------------------------------------------------------+ |``sun`` |Oracle |Only very recent versions are known to work well with | | | |Boost. Note that the Oracle/Sun compiler has a large number| | | |of options which effect binary compatibility: it is vital | | | |that the libraries are built with the same options that your| | | |appliction will use. In particular be aware that the default| | | |standard library may not work well with Boost, *unless you | | | |are building for C++11*. The particular compiler options you| | | |need can be injected with the b2 command line options | | | |``cxxflags=``and ``linkflags=``. For example to build with | | | |the Apache standard library in C++03 mode use | | | |``b2 cxxflags=-library=stdcxx4 linkflags=-library=stdcxx4``.| +-----------+--------------------+------------------------------------------------------------+ |``vacpp`` |IBM |The VisualAge C++ compiler. | +-----------+--------------------+------------------------------------------------------------+ __ Boost.Build_ 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. ``intel-9.0`` or ``borland-5.4.3``. |windows-version-name-caveat| .. _build directory: .. _build-directory: 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 ``b2`` ............... .. |build-directory| replace:: *build-directory* .. |toolset-name| replace:: *toolset-name* Change your current directory to the Boost root directory and invoke ``b2`` as follows: .. parsed-literal:: b2 **--build-dir=**\ |build-directory|_ **toolset=**\ |toolset-name|_ |build-type-complete| stage For a complete description of these and other invocation options, please see the `Boost.Build documentation`__. __ http://www.boost.org/build/doc/html/bbv2/overview/invocation.html