| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 | 
							- <sect2>
 
- <title>Command explanations</title>
 
- <para><userinput>mknod -m 0666 /dev/null c 1 3:</userinput> Glibc needs a
 
- null device to compile properly. All other devices will be created in the
 
- next section.</para>
 
- <para><userinput>touch /etc/ld.so.conf</userinput> One of the final steps of
 
- the Glibc installation is running ldconfig to update the dynamic loader
 
- cache. If this file isn't present Glibc will abort with an error that it
 
- can't read the file. So we create an empty file for it (the empty file 
 
- will have Glibc default to using /lib and 
 
- /usr/lib which is fine right now).</para>
 
- <para><userinput>sed s/"\$(PERL)"/"\/usr\/bin\/perl"/
 
- ../glibc-2.2.3/malloc/Makefile > tmp~:</userinput> This sed command
 
- searches through <filename>../glibc-2.2.3/malloc/Makefile</filename> and
 
- converts all occurances of <filename>$(PERL)</filename> to
 
- <filename>/usr/bin/perl</filename>.  The output is then written to the
 
- file <filename>tmp~</filename>.  This is done because Glibc can't
 
- autodetect perl since it's not installed yet at the time when we install
 
- Glibc.</para>
 
- <para><userinput>mv tmp~ ../glibc-2.2.3/malloc/Makefile:</userinput> The file
 
- <filename>tmp~</filename> is now moved back to
 
- <filename>../glibc-2.2.3/malloc/Makefile</filename>.  We do this because
 
- when using sed, we can't write straight back to this file so we need to
 
- use a temporary file in between.</para>
 
- <para><userinput>sed "s/root/0" ../glibc-2.2.3/login/Makefile >
 
- tmp~:</userinput> This sed command replaces all occurances of
 
- <filename>root</filename> in
 
- <filename>../glibc-2.2.3/login/Makefile</filename> with 0.  This is
 
- because as we don't have glibc on the LFS system yet, usernames can't 
 
- be resolved to their user id's.  Therefore, we replace the username 
 
- root with the id 0. </para>
 
- <para><userinput>mv tmp~ ../glibc-2.2.3/login/Makefile:</userinput> As above,
 
- we are using a temporary file (<filename>tmp~</filename>) to store the
 
- edited Makefile and then copying it back over the original.</para>
 
- <para><userinput>--enable-add-ons:</userinput> This enables the add-on that
 
- we install with Glibc: linuxthreads</para>
 
- <para><userinput>sed s/"cross-compiling = yes"/"cross-compiling = no"/
 
- config.make > config.make~:</userinput> This time, we're replacing
 
- <filename>cross-compiling = yes</filename> with
 
- <filename>cross-compiling = no</filename>.  We do this because we are
 
- only building for our own system.  Cross-compiling is used, for
 
- instance, to build a package for an Apple Power PC on an Intel system.
 
- The reason Glibc thinks we're cross-compiling is that it can't compile a
 
- test program to determin this, so it automatically default to a
 
- cross-compiler. The reason for the failed program is because Glibc
 
- hasn't been installed yet.</para>
 
- <para><userinput>mv config.make~ config.make:</userinput> Again, we are moving
 
- the temporary file over the original.</para>
 
- </sect2>
 
 
  |