source: chapter05/lockingglibc.xml@ 503e1a6

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
Last change on this file since 503e1a6 was 2cff2cc, checked in by Gerard Beekmans <gerard@…>, 21 years ago

added note to run make -C ld install-data-local from within the binutils-build directory

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

  • Property mode set to 100644
File size: 1.8 KB
Line 
1<sect1 id="ch05-locking-glibc">
2<title>"Locking in" Glibc</title>
3<?dbhtml filename="lockingglibc.html" dir="chapter05"?>
4
5<sect2><title>&nbsp;</title><para>&nbsp;</para></sect2>
6
7<sect2>
8<title>Installation of the linker scripts</title>
9
10<para>Run the following command from within the <filename
11class="directory">binutils-build</filename> directory:</para>
12
13<para><screen><userinput>make -C ld install-data-local</userinput></screen></para>
14
15<para>This installs the adjusted linker scripts. Remember they were adjusted
16a little while back, at the end of the first pass of Binutils? The linker
17scripts now contain no mention of <filename>/lib</filename>,
18<filename>/usr/lib</filename> or <filename>/usr/local/lib</filename>.
19From this point onwards everything will link <emphasis>only</emphasis>
20against the libraries in <filename>/stage1/lib</filename>.</para>
21
22<para>You can now remove Binutils' build and source directories.</para>
23
24</sect2>
25
26<sect2>
27<title>Amending GCC's specs file</title>
28
29<para>The final thing to do is to amend our GCC specs file so that it points
30to the new dynamic linker. A simple sed will accomplish this:</para>
31
32<para><screen><userinput>SPECFILE=/stage1/lib/gcc-lib/*/*/specs
33sed -e 's@/lib/ld.so.1@/stage1/lib/ld.so.1@g' \
34&nbsp;&nbsp;&nbsp;&nbsp;-e 's@/lib/ld-linux.so.2@/stage1/lib/ld-linux.so.2@g' \
35&nbsp;&nbsp;&nbsp;&nbsp;$SPECFILE > XX
36mv XX $SPECFILE
37unset SPECFILE</userinput></screen></para>
38
39<para>We recommend that you cut-and-paste the above rather than try and type
40it all in. Or you can edit the specs file by hand if you want to: just replace
41"/lib/ld-linux.so.2" with "/stage1/lib/ld-linux.so.2".</para>
42
43<para>This completes the installation of the self-contained toolchain, which
44can now be used to build the rest of the temporary tools.</para>
45
46</sect2>
47
48</sect1>
49
Note: See TracBrowser for help on using the repository browser.