Product SiteDocumentation Site

3.3.3. Boost

The boost package contains a large number of free peer-reviewed portable C++ source libraries. These libraries are suitable for tasks such as portable file-systems and time/date abstraction, serialization, unit testing, thread creation and multi-process synchronization, parsing, graphing, regular expression manipulation, and many others.
Installing the boost package will provide just enough to satisfy link dependencies (i.e. only shared library files). To make full use of all available libraries and header files for C++ development, you must install boost-devel as well.
The boost package is actually a meta-package, containing many library sub-packages. These sub-packages can also be installed in an a la carte fashion to provide finer inter-package dependency tracking. The meta-package inclues all of the following sub-packages:
Not included in the meta-package are packages for static linking or packages that depend on the underlying Message Passing Interface (MPI) support.
MPI support is provided in two forms: one for the default Open MPI implementation [1] , and another for the alternate MPICH2 implementation. The selection of the underlying MPI library in use is up to the user and depends on specific hardware details and user preferences. For more details, please consult https://fedoraproject.org/wiki/Packaging:MPI for information on MPI Packaging conventions. Please note that these packages can be installed in parallel, as installed files have unique directory locations.
For Open MPI:
For MPICH2:
If static linkage cannot be avoided, the boost-static package will install the necessary static libraries. Both thread-enabled and single-threaded libraries are provided.

3.3.3.1. Boost Updates

The Red Hat Enterprise Linux 6 version of Boost features many packaging improvements and new features.
Several aspects of the boost package have changed. As noted above, the monolithic boost package has been augmented by smaller, more discrete sub-packages. This allows for more control of dependencies by users, and for smaller binary packages when packaging a custom application that uses Boost.
In addition, both single-threaded and multi-threaded versions of all libraries are packaged. The multi-threaded versions include the mt suffix, as per the usual Boost convention.
Boost also features the following new libraries:
  • Foreach
  • Statechart
  • TR1
  • Typeof
  • Xpressive
  • Asio
  • Bitmap
  • Circular Buffer
  • Function Types
  • Fusion
  • GIL
  • Interprocess
  • Intrusive
  • Math/Special Functions
  • Math/Statistical Distributions
  • MPI
  • System
  • Accumulators
  • Exception
  • Units
  • Unordered
  • Proto
  • Flyweight
  • Scope Exit
  • Swap
  • Signals2
  • Property Tree
Many of the existing libraries have been improved, bug-fixed, and otherwise enhanced.


[1] MPI support is not available on IBM System Z machines (where Open MPI is not available).