Adapting the title of the 'Locking in' section.

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@3249 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
This commit is contained in:
Alex Gronenwoud 2004-02-11 22:02:32 +00:00
parent c91dd5bfd0
commit a0b689e8b0
6 changed files with 38 additions and 35 deletions

View File

@ -83,7 +83,7 @@ the second pass.</para>
<screen><userinput>make install</userinput></screen> <screen><userinput>make install</userinput></screen>
<para>Now prepare the linker for the "locking in" of Glibc later on:</para> <para>Now prepare the linker for the "Adjusting" phase later on:</para>
<screen><userinput>make -C ld clean <screen><userinput>make -C ld clean
make -C ld LDFLAGS="-all-static" LIB_PATH=/tools/lib</userinput></screen> make -C ld LDFLAGS="-all-static" LIB_PATH=/tools/lib</userinput></screen>
@ -107,9 +107,9 @@ chapter.</para></listitem>
<!-- HACK - Force some whitespace to appease tidy --> <!-- HACK - Force some whitespace to appease tidy -->
<literallayout></literallayout> <literallayout></literallayout>
<warning><para>Do not yet remove the Binutils build and source directories. You <warning><para><emphasis>Do not yet remove</emphasis> the Binutils build and
will need them again in their current state a bit further on in this source directories. You will need them again in their current state a bit
chapter.</para></warning> further on in this chapter.</para></warning>
<!-- HACK - Force some whitespace to appease tidy --> <!-- HACK - Force some whitespace to appease tidy -->
<literallayout></literallayout> <literallayout></literallayout>

View File

@ -58,7 +58,7 @@ should be easy to spot. The output shown will contain something like:</para>
<screen><userinput>make install</userinput></screen> <screen><userinput>make install</userinput></screen>
<para>Now prepare Binutils for the re-adjusting of the toolchain in the next <para>Now prepare the linker for the "Re-adjusting" phase in the next
chapter:</para> chapter:</para>
<screen><userinput>make -C ld clean <screen><userinput>make -C ld clean
@ -67,9 +67,9 @@ make -C ld LIB_PATH=/usr/lib:/lib</userinput></screen>
<!-- HACK - Force some whitespace to appease tidy --> <!-- HACK - Force some whitespace to appease tidy -->
<literallayout></literallayout> <literallayout></literallayout>
<warning><para>Do not yet remove the Binutils source and build directories. <warning><para><emphasis>Do not yet remove</emphasis> the Binutils source and
We'll need these directories again in the next chapter in the state they are in build directories. You will need these directories again in the next chapter
now.</para></warning> in the state they are in now.</para></warning>
<!-- HACK - Force some whitespace to appease tidy --> <!-- HACK - Force some whitespace to appease tidy -->
<literallayout></literallayout> <literallayout></literallayout>

View File

@ -439,23 +439,24 @@ temporary tools, source the just-created profile:</para>
&c5-glibc; &c5-glibc;
<sect1 id="ch-tools-locking-glibc"> <sect1 id="ch-tools-adjusting">
<title>"Locking in" Glibc</title> <title>Adjusting the toolchain</title>
<?dbhtml filename="lockingglibc.html" dir="chapter05"?> <?dbhtml filename="adjusting.html" dir="chapter05"?>
<para>Now that the temporary C libraries have been installed, we want all <para>Now that the temporary C libraries have been installed, we want all
the tools compiled in the rest of this chapter to be linked against these the tools compiled in the rest of this chapter to be linked against these
libraries. To accomplish this, we need to adjust the linker and the compiler's libraries. To accomplish this, we need to adjust the linker and the compiler's
specs file.</para> specs file. Some people would say that it is <emphasis>"black magic juju below
this line"</emphasis>, but it is really very simple.</para>
<para>First install the adjusted linker by running the following from within <para>First install the adjusted linker (adjusted at the end of the first pass
of Binutils) by running the following command from within
the <filename class="directory">binutils-build</filename> directory:</para> the <filename class="directory">binutils-build</filename> directory:</para>
<screen><userinput>make -C ld install</userinput></screen> <screen><userinput>make -C ld install</userinput></screen>
<para>The linker was adjusted a little while back, at the end of the first <para>From this point onwards everything will link <emphasis>only</emphasis>
pass of Binutils. From this point onwards everything will link <emphasis>only against the libraries in <filename>/tools/lib</filename>.</para>
</emphasis> against the libraries in <filename>/tools/lib</filename>.</para>
<note><para>If you somehow missed the earlier warning to retain the Binutils <note><para>If you somehow missed the earlier warning to retain the Binutils
source and build directories from the first pass or otherwise accidentally source and build directories from the first pass or otherwise accidentally
@ -465,8 +466,8 @@ testing programs linking against libraries on the host. This is not ideal, but
it's not a major problem. The situation is corrected when we install the it's not a major problem. The situation is corrected when we install the
second pass of Binutils a bit further on.</para></note> second pass of Binutils a bit further on.</para></note>
<para>Now that the adjusted linker is installed, you have to remove the <para>Now that the adjusted linker is installed, you have to
Binutils build and source directories.</para> <emphasis>remove</emphasis> the Binutils build and source directories.</para>
<para>The next thing to do is to amend our GCC specs file so that it points <para>The next thing to do is to amend our GCC specs file so that it points
to the new dynamic linker. A simple sed will accomplish this:</para> to the new dynamic linker. A simple sed will accomplish this:</para>
@ -541,9 +542,6 @@ ensuring to cut-and-paste the commands as was recommended.</para>
<!-- HACK - Force some whitespace to appease tidy --> <!-- HACK - Force some whitespace to appease tidy -->
<literallayout></literallayout> <literallayout></literallayout>
<para>This completes the installation of the self-contained toolchain, and it
can now be used to build the rest of the temporary tools.</para>
</sect1> </sect1>

View File

@ -167,8 +167,8 @@ to continue on.</para>
<screen><userinput>make install</userinput></screen> <screen><userinput>make install</userinput></screen>
<note><para>At this point it is strongly recommended to repeat the sanity check <note><para>At this point it is strongly recommended to repeat the sanity check
we performed earlier in the chapter. Refer back to we performed earlier in this chapter. Refer back to
<xref linkend="ch-tools-locking-glibc"/> and repeat the check. If the results are <xref linkend="ch-tools-adjusting"/> and repeat the check. If the results are
wrong, then most likely you forgot to apply the above mentioned GCC Specs wrong, then most likely you forgot to apply the above mentioned GCC Specs
patch.</para></note> patch.</para></note>

View File

@ -357,16 +357,21 @@ file records the bad login attempts.</para>
&c6-glibc; &c6-glibc;
<sect1 id="ch-system-adjustingtoolchain"> <sect1 id="ch-system-readjusting">
<title>Re-adjusting the toolchain</title> <title>Re-adjusting the toolchain</title>
<?dbhtml filename="adjustingtoolchain.html" dir="chapter06"?> <?dbhtml filename="readjusting.html" dir="chapter06"?>
<para>Now that the new C libraries have been installed, it's time to re-adjust <para>Now that the new and final C libraries have been installed, it's time to
our toolchain. We'll adjust it so that it will link any newly compiled program adjust our toolchain again. We'll adjust it so that it will link any newly
against the new C libraries. Basically, this is the reverse of what we did compiled program against these new libraries. This is in fact the same we did
in the "locking in" stage in the beginning of the previous chapter.</para> in the "Adjusting" phase in the beginning of the previous chapter, even though
it looks like the reverse: then we guided the chain from the host's
<filename class="directory">{,/usr}/lib</filename> to the new
<filename class="directory">/tools/lib</filename>, now we guide it from that
same <filename class="directory">/tools/lib</filename>
to the LFS's <filename class="directory">{,/usr}/lib</filename>.</para>
<para>The first thing to do is to adjust the linker. For this we retained the <para>First we adjust the linker. For this we retained the
source and build directories from the second pass over Binutils. Install the source and build directories from the second pass over Binutils. Install the
adjusted linker by running the following from within the adjusted linker by running the following from within the
<filename class="directory">binutils-build</filename> directory:</para> <filename class="directory">binutils-build</filename> directory:</para>
@ -378,10 +383,10 @@ source and build directories from the second pass in
<xref linkend="chapter-temporary-tools"/>, or otherwise accidentally deleted them or just <xref linkend="chapter-temporary-tools"/>, or otherwise accidentally deleted them or just
don't have access to them, don't worry, all is not lost. Just ignore the above don't have access to them, don't worry, all is not lost. Just ignore the above
command. The result will be that the next package, Binutils, will link against command. The result will be that the next package, Binutils, will link against
the Glibc libraries in <filename class="directory">/tools</filename> rather the C libraries in <filename class="directory">/tools</filename> rather
than <filename class="directory">/usr</filename>. This is not ideal, however, than <filename class="directory">{,/usr}/lib</filename>. This is not ideal,
our testing has shown that the resulting Binutils program binaries should be however, our testing has shown that the resulting Binutils program binaries
identical.</para></note> should be identical.</para></note>
<para>From now on every compiled program will link <emphasis>only</emphasis> <para>From now on every compiled program will link <emphasis>only</emphasis>
against the libraries in <filename>/usr/lib</filename> and against the libraries in <filename>/usr/lib</filename> and

View File

@ -90,7 +90,7 @@ compiler. To satisfy those packages, create a symlink:</para>
<note><para>At this point it is strongly recommended to repeat the sanity check <note><para>At this point it is strongly recommended to repeat the sanity check
we performed earlier in this chapter. Refer back to we performed earlier in this chapter. Refer back to
<xref linkend="ch-system-adjustingtoolchain"/> and repeat the check. If the results <xref linkend="ch-system-readjusting"/> and repeat the check. If the results
are wrong, then most likely you erroneously applied the GCC Specs patch from are wrong, then most likely you erroneously applied the GCC Specs patch from
<xref linkend="chapter-temporary-tools"/>.</para></note> <xref linkend="chapter-temporary-tools"/>.</para></note>