Changeset 7f1fcd8 for chapter05


Ignore:
Timestamp:
10/24/2003 05:28:42 PM (21 years ago)
Author:
Alex Gronenwoud <alex@…>
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, 6.0, 6.1, 6.1.1, 6.3, 6.4, 6.5, 6.6, 6.7, 6.8, 7.0, 7.1, 7.2, 7.3, 7.4, 7.5, 7.5-systemd, 7.6, 7.6-systemd, 7.7, 7.7-systemd, 7.8, 7.8-systemd, 7.9, 7.9-systemd, 8.0, 8.1, 8.2, 8.3, 8.4, 9.0, 9.1, arm, bdubbs/gcc13, ml-11.0, multilib, renodr/libudev-from-systemd, s6-init, trunk, v5_0, v5_1, v5_1_1, 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:
323ef74
Parents:
494f01f
Message:

Adding several cross reference tags.

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

Location:
chapter05
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • chapter05/binutils-pass2-inst.xml

    r494f01f r7f1fcd8  
    3131
    3232<note><para>It's worth pointing out that running the Binutils test suite here
    33 is considered not as important as running it in Chapter 6.</para></note>
     33is considered not as important as running it in
     34<xref linkend="chapter06"/>.</para></note>
    3435
    3536<para>Test the results (there should be no unexpected failures here, expected
  • chapter05/chapter05.xml

    r494f01f r7f1fcd8  
    1 <chapter id="chapter05">
     1<chapter id="chapter05" xreflabel="Chapter 5">
    22<title>Constructing a temporary system</title>
    33<?dbhtml filename="chapter05.html" dir="chapter05"?>
  • chapter05/gcc-pass2-inst.xml

    r494f01f r7f1fcd8  
    3939script scans your system for header files that need to be fixed.  It might find
    4040that some Glibc header files on your host system need to be fixed, fix them and
    41 put them in the GCC private include directory.  Then, later on in Chapter 6,
    42 after we've installed the newer Glibc, this private include directory would be
    43 searched before the system include directory, resulting in GCC finding the
    44 fixed headers from the host system, which would most likely not match the Glibc
    45 version actually used for the LFS system.</para>
     41put them in the GCC private include directory.  Then, later on in
     42<xref linkend="chapter06"/>, after we've installed the newer Glibc, this
     43private include directory would be searched before the system include
     44directory, resulting in GCC finding the fixed headers from the host system,
     45which would most likely not match the Glibc version actually used for the LFS
     46system.</para>
    4647
    4748<para>The last patch changes GCC's default location of the dynamic linker
     
    106107
    107108<note><para>It's worth pointing out that running the GCC test suite here
    108 is considered not as important as running it in Chapter 6.</para></note>
     109is considered not as important as running it in
     110<xref linkend="chapter06"/>.</para></note>
    109111
    110112<para>Test the results:</para>
  • chapter05/glibc-inst.xml

    r494f01f r7f1fcd8  
    1010
    1111<note><para>We are going to run the test suite for Glibc in this chapter.
    12 However, it's worth pointing out that running the Glibc test suite here
    13 is considered not as important as running it in Chapter 6.</para></note>
     12However, it's worth pointing out that running the Glibc test suite here
     13is considered not as important as running it in
     14<xref linkend="chapter06"/>.</para></note>
    1415
    1516<para>This package is known to behave badly when you have changed its
     
    9091
    9192<para>The Glibc test suite is highly dependent on certain functions of your host
    92 system, in particular the kernel. Additionally, here in Chapter 5 some tests
     93system, in particular the kernel. Additionally, here in this chapter some tests
    9394can be adversely affected by existing tools or environmental issues on the host
    9495system. Of course, these won't be a problem when we run the Glibc test suite
    95 inside the chroot environment of Chapter 6. In general, the Glibc test suite is
    96 always expected to pass. However, as mentioned above, some failures are
    97 unavoidable in certain circumstances. Here is a list of the most common issues
    98 we are aware of:</para>
     96inside the chroot environment of <xref linkend="chapter06"/>. In general, the
     97Glibc test suite is always expected to pass. However, as mentioned above, some
     98failures are unavoidable in certain circumstances. Here is a list of the most
     99common issues we are aware of:</para>
    99100
    100101<itemizedlist>
     
    119120</itemizedlist>
    120121
    121 <para>In summary, don't worry too much if you see Glibc test suite failures here
    122 in Chapter 5. The Glibc in Chapter 6 is the one we'll ultimately end up using so
    123 that is the one we would really like to see pass. But please keep in mind, even
    124 in Chapter 6 some failures could still occur -- the <emphasis>math</emphasis>
     122<para>In summary, don't worry too much if you see Glibc test suite failures
     123here in this chapter. The Glibc in <xref linkend="chapter06"/> is the one we'll
     124ultimately end up using so that is the one we would really like to see pass.
     125But please keep in mind, even in <xref linkend="chapter06"/> some failures
     126could still occur -- the <emphasis>math</emphasis>
    125127tests for example. When experiencing a failure, make a note of it, then
    126128continue by reissuing the <userinput>make check</userinput>. The test suite
  • chapter05/tcl-inst.xml

    r494f01f r7f1fcd8  
    1919
    2020<para>This package has a test suite available which can perform a number of
    21 checks to ensure it built correctly. However, the Tcl test suite here in
    22 Chapter 5 is known to experience failures under certain host conditions that
    23 are not fully understood. Therefore, test suite failures here are not
    24 surprising, but are not considered critical. Should you choose to run the test
    25 suite, the following command will do so:</para>
     21checks to ensure it built correctly. However, the Tcl test suite in this
     22chapter is known to experience failures under certain host conditions that are
     23not fully understood. Therefore, test suite failures here are not surprising,
     24but are not considered critical. Should you choose to run the test suite, the
     25following command will do so:</para>
    2626
    2727<screen><userinput>TZ=UTC make test</userinput></screen>
     
    3434only for the duration of the test suite run. This ensures the clock tests are
    3535exercised correctly. More information on the TZ environment variable is
    36 available later on in Chapter 7.</para></listitem>
     36available later on in <xref linkend="chapter07"/>.</para></listitem>
    3737</itemizedlist>
    3838
  • chapter05/toolchaintechnotes.xml

    r494f01f r7f1fcd8  
    88an actual build. Feel free to refer back here at any time.</para>
    99
    10 <para>The overall goal of Chapter 5 is to provide a sane, temporary environment
    11 that we can chroot into, and from which we can produce a clean, trouble-free
    12 build of the target LFS system in Chapter 6. Along the way, we attempt to
    13 divorce ourselves from the host system as much as possible, and in so doing
    14 build a self-contained and self-hosted toolchain. It should be noted that the
     10<para>The overall goal of <xref linkend="chapter05"/> is to provide a sane,
     11temporary environment that we can chroot into, and from which we can produce a
     12clean, trouble-free build of the target LFS system in
     13<xref linkend="chapter06"/>. Along the way, we attempt to divorce ourselves
     14from the host system as much as possible, and in so doing build a
     15self-contained and self-hosted toolchain. It should be noted that the
    1516build process has been designed in such a way so as to minimize the risks for
    1617new readers and provide maximum educational value at the same time. In other
     
    4546</important>
    4647
    47 <para>Some key technical points of how the Chapter 5 build method works:</para>
     48<para>Some key technical points of how the <xref linkend="chapter05"/> build
     49method works:</para>
    4850
    4951<itemizedlist>
     
    129131<userinput>'readelf -l &lt;name of binary&gt; | grep interpreter'</userinput>.
    130132By amending <userinput>gcc</userinput>'s specs file, we are ensuring that every
    131 program compiled from here through the end of Chapter 5 will use our new
    132 dynamic linker in <filename class="directory">/tools/lib</filename>.</para>
     133program compiled from here through the end of <xref linkend="chapter05"/> will
     134use our new dynamic linker in
     135<filename class="directory">/tools/lib</filename>.</para>
    133136
    134137<para>The need to use the new dynamic linker is also the reason why we apply the
     
    142145<userinput>ld</userinput>'s library search path. From this point onwards, the
    143146core toolchain is self-contained and self-hosted. The remainder of the
    144 Chapter 5 packages all build against the new Glibc in
     147<xref linkend="chapter05"/> packages all build against the new Glibc in
    145148<filename class="directory">/tools</filename> and all is well.</para>
    146149
    147 <para>Upon entering the chroot environment in Chapter 6, the first major package
    148 we install is Glibc, due to its self-sufficient nature that we mentioned above.
    149 Once this Glibc is installed into <filename class="directory">/usr</filename>,
    150 we perform a quick changeover of the toolchain defaults, then proceed for real
    151 in building the rest of the target Chapter 6 LFS system.</para>
     150<para>Upon entering the chroot environment in <xref linkend="chapter06"/>, the
     151first major package we install is Glibc, due to its self-sufficient nature that
     152we mentioned above. Once this Glibc is installed into
     153<filename class="directory">/usr</filename>, we perform a quick changeover of
     154the toolchain defaults, then proceed for real in building the rest of the
     155target <xref linkend="chapter06"/> LFS system.</para>
    152156
    153157<sect2>
     
    181185make use of the improved function.</para>
    182186
    183 <para>Why do we statically link the first two packages in Chapter 5? The reasons
    184 are threefold: historical, educational and technical. Historical because earlier
    185 versions of LFS statically linked every program in Chapter 5. Educational
    186 because knowing the difference is useful. Technical because we gain an element
    187 of independence from the host in doing so, i.e. those programs can be used
     187<para>If dynamic linking has several advantages, why then do we statically link
     188the first two packages in this chapter? The reasonsare threefold: historical,
     189educational, and technical. Historical, because earlier versions of LFS
     190statically linked every program in this chapter. Educational, because knowing
     191the difference is useful. Technical, because we gain an element of independence
     192from the host in doing so, meaning that those programs can be used
    188193independently of the host system. However, it's worth noting that an overall
    189 successful LFS build can still be achieved when the first two packages are built
    190 dynamically.</para>
     194successful LFS build can still be achieved when the first two packages are
     195built dynamically.</para>
    191196
    192197</sect2>
Note: See TracChangeset for help on using the changeset viewer.