source: chapter06/glibc-exp.xml@ ca6391e

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 ca6391e was 159c2d2, checked in by Gerard Beekmans <gerard@…>, 22 years ago

applied Alex's so-it's-ids.patch

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

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