Boost-1.70.0

#### Beyond Linux® From Scratch (systemd Edition) - Version 9.0

### Chapter 9. General Libraries

- Prev

  Aspell-0.60.7

- Next

  CLucene-2.3.3.4

- Up
- Home

# Boost-1.70.0

## Introduction to Boost

Boost provides a set of free peer-reviewed portable C++ source libraries. It includes libraries for linear algebra, pseudorandom number generation, multithreading, image processing, regular expressions and unit testing.

This package is known to build and work properly using an LFS-9.0 platform.

### Package Information

- Download (HTTP): https://dl.bintray.com/boostorg/release/1.70.0/source/boost_1_70_0.tar.bz2

- Download MD5 sum: 242ecc63507711d6706b9b0c0d0c7d4f

- Download size: 93 MB

- Estimated disk space required: 938 MB (168 MB installed)

- Estimated build time: 1.8 SBU (Using parallelism=4; add 1.1 SBU for tests)

### Boost Dependencies

#### Recommended

Which-2.21

#### Optional

ICU-64.2, Python-2.7.16, and Open MPI

User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/boost

## Installation of Boost

Install Boost by running the following commands:

    ./bootstrap.sh --prefix=/usr &&
    ./b2 stage threading=multi link=shared

To run the Boost.Build's regression test, Python-2.7.16 is required. Run the tests with: issue pushd tools/build/test; python test_all.py; popd. All 152 tests should pass.

To run every library's regression tests, issue pushd status; ../b2; popd. A few tests may fail. They take a very long time (over 119 SBU at -j4) and use a very large amount of disk space (46 GB). You should use the `-jN` switch to speed them up.

Now, as the `root` user:

    ./b2 install threading=multi link=shared                 &&
    ln -svf detail/sha1.hpp /usr/include/boost/uuid/sha1.hpp

## Command Explanations

`threading=multi`: This parameter ensures that Boost is built with multithreading support.

`link=shared`: This parameter ensures that only shared libraries are created, except for libboost_exception and libboost_test_exec_monitor which are created as static. Most people will not need the static libraries, and most programs using Boost only use the headers. Omit this parameter if you do need static libraries.

`ln -svf detail/sha1.hpp ...`: The `uuid/sha1.hpp` used to be a regular header, but by boost_1_66_0 it had been changed to load the similar `detail/sha1.hpp` header, with a message that it had been deprecated. It has now been removed, but not every package which uses it has been changed. An example is one of the libraries downloaded as a git version by libreoffice. The symlink enables this and similar packages to build.

`-jN`: This switch may be added to the b2 command lines, to run up to N processes in parallel.

`--with-python=python3`: Add this switch to the bootstrap command, if you want Boost to use Python3 instead of Python2. Using Python3 is known to cause the installation to fail on some systems.

## Contents

Installed Programs: None
Installed Libraries: libboost_atomic.so, libboost_chrono.a, libboost_chrono.so, libboost_container.so, libboost_context.so, libboost_coroutine.so, libboost_date_time.so, libboost_exception.a, libboost-fiber.so, libboost_filesystem.so, libboost_graph.so, libboost_iostreams.so, libboost_locale.so, libboost_log_setup.so, libboost_log.so, libboost_math_c99.so, libboost_math_c99f.so, libboost_math_c99l.so, libboost_math_tr1.so, libboost_math_tr1f.so, libboost_math_tr1l.so, libboost_prg_exec_monitor.so, libboost_program_options.so, libboost_python27.so or libboost_python3.so, libboost_random.so, libboost_regex.so, libboost_serialization.so, libboost_signals.so, libboost_stacktrace_addr2line.so, libboost_stacktrace_basic.so, libboost_stacktrace_noop.so, libboost_system.a, libboost_system.so, libboost_test_exec_monitor.a, libboost_thread.so, libboost_timer.a, libboost_timer.so, libboost_type_erasure.so, libboost_unit_test_framework.so, libboost_wave.so, and libboost_wserialization.so
Installed Directory: /usr/include/boost

Last updated on 2019-08-16 23:26:32 -0700

- Prev

  Aspell-0.60.7

- Next

  CLucene-2.3.3.4

- Up
- Home