Changeset 503e1a6


Ignore:
Timestamp:
08/18/2003 08:54:11 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:
460ac758
Parents:
69a52c1
Message:

moved adjusting toolchain, bug #519, bug #537, and updated changelog

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

Files:
6 edited

Legend:

Unmodified
Added
Removed
  • chapter01/changelog.xml

    r69a52c1 r503e1a6  
    8383</para></listitem>
    8484
     85<listitem><para>August 17th, 2003 [alex]: Moved the adjusting of the toolchain
     86from chapter 6 to the end of chapter 5.</para></listitem>
     87
     88<listitem><para>August 17th, 2003 [alex]: Chapter 05 - From Bash to Perl:
     89put text in between commands. Added a section on stripping unneeded
     90symbols to decrease the size of the tools.</para></listitem>
     91
     92<listitem><para>August 16th, 2003 [alex]: Chapter 05 - From Make to Texinfo:
     93put text in between commands.</para></listitem>
     94
    8595<listitem><para>August 11th, 2003 [alex]: Chapter 05 - From Binutils Pass 1 to
    8696Findutils: several small textual adjustments. For the second passes not giving
  • chapter05/chapter05.xml

    r69a52c1 r503e1a6  
    3636&c5-perl;
    3737
     38
     39<sect1 id="ch05-adjustingtoolchain">
     40<title>Re-adjusting the toolchain</title>
     41<?dbhtml filename="adjustingtoolchain.html" dir="chapter05"?>
     42
     43<para>Now that we have compiled all the necessary tools, it is time to
     44re-adjust our toolchain. We will set it up so that it will link any newly
     45compiled program against the new Glibc, which is the first thing to get
     46compiled in the next chapter. Basically, this is the reverse of what we did
     47in the "Locking in" stage in the beginning of this chapter.</para>
     48
     49<para>The first thing to do is to adjust the linker scripts. For this we
     50retained the <filename>binutils-build</filename> directory from the second
     51pass over Binutils. Do the following:</para>
     52
     53<para><screen><userinput>cd binutils-build
     54make -C ld INSTALL=/stage1/bin/install install-data-local</userinput></screen></para>
     55
     56<para>This installs the adjusted linker scripts. The linker scripts now contain
     57no mention of <filename>/stage1/lib</filename>. From now on every compiled
     58program will link <emphasis>only</emphasis> against the libraries in
     59<filename>/usr/lib</filename> and <filename>/lib</filename>. The extra
     60<userinput>INSTALL=/stage1/bin/install</userinput> is needed because the
     61Makefile created during the second pass still contains the reference to
     62<filename>/usr/bin/install</filename>, which we obviously haven't installed
     63yet.</para>
     64
     65<para>You can now remove the Binutils source and build directories.</para>
     66
     67<para>The next thing to do is to amend our GCC specs file so that it points to
     68the new dynamic linker. Just like earlier on, we use a sed to accomplish
     69this:</para>
     70
     71<para><screen><userinput>CURRENTSPECFILE=/stage1/lib/gcc-lib/*/*/specs
     72sed -e 's@/stage1/lib/ld.so.1@/lib/ld.so.1@g' \
     73&nbsp;&nbsp;&nbsp;&nbsp;-e 's@/stage1/lib/ld-linux.so.2@/lib/ld-linux.so.2@g' \
     74&nbsp;&nbsp;&nbsp;&nbsp;$CURRENTSPECFILE > newspecfile
     75mv newspecfile $CURRENTSPECFILE
     76unset CURRENTSPECFILE</userinput></screen></para>
     77
     78<para>Again, cutting and pasting the above is recommended. And just like
     79before, it is a good idea to check the linker scripts and the specs file to
     80ensure the intended changes were actually made.</para>
     81
     82<para>Note that the linker scripts will still contain a reference to
     83<filename>/stage1/i686-pc-linux-gnu/lib</filename>. This is unavoidable, but
     84luckily does not present a problem. There are no libraries in that location
     85as all the temporary stage1 libraries are located in
     86<filename>/stage1/lib</filename>.</para>
     87
     88</sect1>
     89
     90
     91
    3892<sect1 id="ch05-stripping">
    3993<title>Stripping</title>
  • chapter05/creatingstage1dir.xml

    r69a52c1 r503e1a6  
    2020<para>This symlink enables us to compile our toolchain so that it always
    2121refers to <filename>/stage1</filename>, meaning that the compiler, assembler
    22 and linker will work both in this chapter (when we are still rummaging around
    23 on the host) <emphasis>and</emphasis> in the next (when we are chrooted to
     22and linker will work both in this chapter (when we are still using some tools
     23from the host) <emphasis>and</emphasis> in the next (when we are chrooted to
    2424the LFS partition).</para>
    2525
  • chapter05/ncurses-inst.xml

    r69a52c1 r503e1a6  
    2626<para><screen><userinput>make install</userinput></screen></para>
    2727
    28 <para>And make some of the libraries executable:</para>
    29 
    30 <para><screen><userinput>chmod 755 /stage1/lib/*.5.3</userinput></screen></para>
    31 
    3228</sect2>
    3329
  • chapter06/chapter06.xml

    r69a52c1 r503e1a6  
    1515&c6-manpages;
    1616&c6-glibc;
    17 &c6-adjustingtoolchain;
    1817&c6-binutils;
    1918&c6-gcc;
  • index.xml

    r69a52c1 r503e1a6  
    55<!ENTITY book SYSTEM "book/book.xml">
    66
    7 <!ENTITY version "20030806">
    8 <!ENTITY releasedate "August 6th, 2003">
     7<!ENTITY version "20030817">
     8<!ENTITY releasedate "August 17th, 2003">
    99<!ENTITY nbsp " ">
    1010
Note: See TracChangeset for help on using the changeset viewer.