#### Linux From Scratch - Version 7.10

### Chapter 5. Constructing a Temporary System

- Prev

  Glibc-2.24

- Next

  Binutils-2.27 - Pass 2

- Up
- Home

# 5.8. Libstdc++-6.2.0

Libstdc++ is the standard C++ library. It is needed for the correct operation of the g++ compiler.

Approximate build time: 0.4 SBU
Required disk space: 896 MB

## 5.8.1. Installation of Target Libstdc++

### Note

Libstdc++ is part of the GCC sources. You should first unpack the GCC tarball and change to the `gcc-6.2.0` directory.

Create a separate build directory for Libstdc++ and enter it:

    mkdir -v build
    cd       build

Prepare Libstdc++ for compilation:

    ../libstdc++-v3/configure           \
        --host=$LFS_TGT                 \
        --prefix=/tools                 \
        --disable-multilib              \
        --disable-nls                   \
        --disable-libstdcxx-threads     \
        --disable-libstdcxx-pch         \
        --with-gxx-include-dir=/tools/$LFS_TGT/include/c++/6.2.0

The meaning of the configure options:

`--host=...`

  Indicates to use the cross compiler we have just built instead of the one in `/usr/bin`.

`--disable-libstdcxx-threads`

  Since we have not yet built the C threads library, the C++ one cannot be built either.

`--disable-libstdcxx-pch`

  This switch prevents the installation of precompiled include files, which are not needed at this stage.

`--with-gxx-include-dir=/tools/$LFS_TGT/include/c++/6.2.0`

  This is the location where the standard include files are searched by the C++ compiler. In a normal build, this information is automatically passed to the Libstdc++ configure options from the top level directory. In our case, this information must be explicitly given.

Compile libstdc++ by running:

    make

Install the library:

    make install

Details on this package are located in Section 6.17.2, “Contents of GCC.”

- Prev

  Glibc-2.24

- Next

  Binutils-2.27 - Pass 2

- Up
- Home