Boost
Boost provide portable C++ libraries useful in a broad range of contexts. The libraries are freely available under the terms of the Boost Software license.
Compiling and linking
module load boost
The C++ compiler wrapper CC
will
introduce the appropriate options to compile an application
against the Boost libraries. The other compiler wrappers
(cc
and ftn
) do not introduce these options.
To check exactly what options are introduced type, e.g.,
$ CC --cray-print-opts
The boost
module also defines the environment variable BOOST_DIR
as the root of the installation for the current programming environment
if this information is needed.
Version history
- Module
boost/1.81.0
installed May 2023 (PE 22.12) - Module
boost/1.72.0
recompiled May 2023 (PE 22.12)
- Module
boost/1.72
installed October 2021 (PE 21.04)
- Module
boost/1.72.0
installed January 2021
The following libraries are installed: atomic chrono container context
contract coroutine date_time exception fiber filesystem graph_parallel
graph iostreams locale log math mpi program_options random
regex serialization stacktrace system test thread timer type_erasure
wave
Compiling Boost
The ARCHER2 Github repository contains a recipe for compiling Boost for the different programming environments.
$ git clone https://github.com/ARCHER2-HPC/pe-scripts.git
$ cd pe-scripts
$ git checkout cse-develop
$ ./sh/boost.sh --prefix=/path/to/install/location
--prefix
determines the install location. The list of
libraries compiled is specified in the boost.sh
script. See the
ARCHER2 Github repository for further information.