Ignore:
Timestamp:
06/16/2020 11:56:28 AM (4 years ago)
Author:
Bruce Dubbs <bdubbs@…>
Branches:
10.0, 10.0-rc1, 10.1, 10.1-rc1, 11.0, 11.0-rc1, 11.0-rc2, 11.0-rc3, 11.1, 11.1-rc1, 11.2, 11.2-rc1, 11.3, 11.3-rc1, 12.0, 12.0-rc1, 12.1, 12.1-rc1, arm, bdubbs/gcc13, ml-11.0, multilib, renodr/libudev-from-systemd, s6-init, trunk, xry111/arm64, xry111/arm64-12.0, xry111/clfs-ng, xry111/lfs-next, xry111/loongarch, xry111/loongarch-12.0, xry111/loongarch-12.1, xry111/mips64el, xry111/pip3, xry111/rust-wip-20221008, xry111/update-glibc
Children:
9a05e45
Parents:
560065f (diff), 1cd5961 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Split Chapter 5 into three separate chapters.
Implement a new method of cross-building the LFS tool chain
and other tools to simplify the method of isolating the
new system from the original host. This will be the start of
LFS-10.0.

Move old trunk/BOOK to branches/old-trunk.

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@11946 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

File:
1 edited

Legend:

Unmodified
Added
Removed
  • chapter05/libstdc++.xml

    r560065f r675606b  
    66]>
    77
    8 <sect1 id="ch-tools-libstdcpp" role="wrap">
    9   <?dbhtml filename="gcc-libstdc++.html"?>
     8<sect1 id="ch-tools-libstdcpp-pass1" role="wrap">
     9  <?dbhtml filename="gcc-libstdc++-pass1.html"?>
    1010
    1111  <sect1info condition="script">
     
    1515  </sect1info>
    1616
    17   <title>Libstdc++ from GCC-&gcc-version;</title>
     17  <title>Libstdc++ from GCC-&gcc-version;, Pass 1</title>
    1818
    19   <indexterm zone="ch-tools-libstdcpp">
     19  <indexterm zone="ch-tools-libstdcpp-pass1">
    2020    <primary sortas="a-GCC">GCC</primary>
    21     <secondary>tools, libstdc++</secondary>
     21    <secondary>tools, libstdc++ pass 1</secondary>
    2222  </indexterm>
    2323
     
    2929    (part of GCC is written in C++), but we had to defer its installation
    3030    when we built <xref linkend="ch-tools-gcc-pass1"/>
    31     because it depends on glibc, which was not yet available in /tools.
     31    because it depends on glibc, which was not yet available in the target
     32    directory.
    3233    </para>
    3334
     
    3738
    3839      <seglistitem>
    39         <seg>&libstdcpp-ch5-sbu;</seg>
    40         <seg>&libstdcpp-ch5-du;</seg>
     40        <seg>&libstdcpp-tmpp1-sbu;</seg>
     41        <seg>&libstdcpp-tmpp1-du;</seg>
    4142      </seglistitem>
    4243    </segmentedlist>
     
    5354    </note>
    5455
    55     <para>Create a separate build directory for Libstdc++ and enter it:</para>
     56    <para>Create a separate build directory for libstdc++ and enter it:</para>
    5657
    5758<screen><userinput remap="pre">mkdir -v build
    5859cd       build</userinput></screen>
    5960
    60     <para>Prepare Libstdc++ for compilation:</para>
     61    <para>Prepare libstdc++ for compilation:</para>
    6162
    6263<screen><userinput remap="configure">../libstdc++-v3/configure           \
    6364    --host=$LFS_TGT                 \
    64     --prefix=/tools                 \
     65    --build=$(../config.guess)      \
     66    --prefix=/usr                   \
    6567    --disable-multilib              \
    66     --disable-nls                   \<!--
    67     - -disable-libstdcxx-threads     \-->
     68    --disable-nls                   \
    6869    --disable-libstdcxx-pch         \
    6970    --with-gxx-include-dir=/tools/$LFS_TGT/include/c++/&gcc-version;</userinput></screen>
     
    7576        <term><parameter>--host=...</parameter></term>
    7677        <listitem>
    77           <para>Indicates to use the cross compiler we have just built
     78          <para>Specifies the use the cross compiler we have just built
    7879          instead of the one in <filename>/usr/bin</filename>.</para>
    7980        </listitem>
    8081      </varlistentry>
    81         <!--
    82       <varlistentry>
    83         <term><parameter>- -disable-libstdcxx-threads</parameter></term>
    84         <listitem>
    85           <para>Since gcc-pass1 is built without thread support, the C++
    86           thread library cannot be built either.</para>
    87         </listitem>
    88       </varlistentry>
    89         -->
     82
    9083      <varlistentry>
    9184        <term><parameter>--disable-libstdcxx-pch</parameter></term>
     
    9992        <term><parameter>--with-gxx-include-dir=/tools/$LFS_TGT/include/c++/&gcc-version;</parameter></term>
    10093        <listitem>
    101           <para>This is the location where the standard include files are
    102           searched by the C++ compiler. In a normal build, this information
    103           is automatically passed to the Libstdc++ <command>configure</command>
     94          <para>This is the location where the C++ compiler should search for the
     95          standard include files. In a normal build, this information
     96          is automatically passed to the libstdc++ <command>configure</command>
    10497          options from the top level directory. In our case, this information
    10598          must be explicitly given.</para>
     
    115108    <para>Install the library:</para>
    116109
    117 <screen><userinput remap="install">make install</userinput></screen>
     110<screen><userinput remap="install">make DESTDIR=$LFS install</userinput></screen>
    118111
    119112  </sect2>
Note: See TracChangeset for help on using the changeset viewer.