source: chapter06/glibc-exp.xml@ 65824097

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 v4_0 v4_1 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 65824097 was 8f9069b3, checked in by Mark Hymers <markh@…>, 22 years ago

spelling corrections

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

  • Property mode set to 100644
File size: 2.5 KB
Line 
1<sect2>
2<title>Command explanations</title>
3
4<para><userinput>mknod -m 0666 /dev/null c 1 3:</userinput> Glibc needs a
5null device to compile properly. All other devices will be created in the
6next section.</para>
7
8<para><userinput>touch /etc/ld.so.conf</userinput> One of the final steps
9of the Glibc installation is running ldconfig to update the dynamic loader
10cache. If this file doesn't exist, the installation will abort with an error
11that it can't read the file, so we simply create an empty file (the empty file
12will have Glibc default to using /lib and /usr/lib which is fine).</para>
13
14<para><userinput>sed 's%\$(PERL)%/usr/bin/perl%'
15malloc/Makefile.backup &gt; malloc/Makefile:</userinput> This sed command
16searches through <filename>malloc/Makefile.backup</filename> and
17converts all occurrences of <filename>$(PERL)</filename> to
18<filename>/usr/bin/perl</filename>. The output is then written to the
19original <filename>malloc/Makefile.in</filename> which is used during
20configuration. This is done because Glibc can't autodetect perl since
21it hasn't been installed yet.</para>
22
23<para><userinput>sed 's/root/0' login/Makefile.backup &gt;
24login/Makefile:</userinput> This sed command replaces all occurrences of
25<filename>root</filename> in <filename>login/Makefile.backup</filename>
26with 0. This is because we don't have glibc on the LFS system yet, so
27usernames can't be resolved to their user id's. Therefore, we replace
28the username root with user id 0.</para>
29
30<para><userinput>--enable-add-ons:</userinput> This enables the add-on that
31we install with Glibc: linuxthreads</para>
32
33<para><userinput>--libexecdir=/usr/bin:</userinput> This will cause the
34pt_chown program to be installed in the /usr/bin directory.</para>
35
36<para><userinput>echo "cross-compiling = no" &gt; configparms:</userinput>
37We do this because we are only building for our own system. Cross-compiling
38is used, for instance, to build a package for an Apple Power PC on an
39Intel system. The reason Glibc thinks we're cross-compiling is that it
40can't compile a test program to determine this, so it automatically defaults
41to a cross-compiler. Compiling the test program fails because Glibc hasn't
42been installed yet.</para>
43
44<para><userinput>exec /bin/bash:</userinput>This command will
45start a new bash shell which will replace the current shell. This is
46done to get rid of the "I have no name!" message in the command
47prompt, which was caused by bash's inability to resolve a userid to
48a username (which in turn was caused by the missing Glibc
49installation).</para>
50
51</sect2>
52
Note: See TracBrowser for help on using the repository browser.