|
@@ -12,30 +12,20 @@ that it can't read the file, so we simply create an empty file (the empty file
|
|
will have Glibc default to using /lib and /usr/lib which is fine).</para>
|
|
will have Glibc default to using /lib and /usr/lib which is fine).</para>
|
|
|
|
|
|
<para><userinput>sed 's%\$(PERL)%/usr/bin/perl%'
|
|
<para><userinput>sed 's%\$(PERL)%/usr/bin/perl%'
|
|
-malloc/Makefile > tmp~:</userinput> This sed command
|
|
|
|
-searches through <filename>malloc/Makefile</filename> and
|
|
|
|
|
|
+malloc/Makefile.backup > malloc/Makefile:</userinput> This sed command
|
|
|
|
+searches through <filename>malloc/Makefile.backup</filename> and
|
|
converts all occurrences of <filename>$(PERL)</filename> to
|
|
converts all occurrences 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 hasn't been installed yet.</para>
|
|
|
|
-
|
|
|
|
-<para><userinput>mv tmp~ malloc/Makefile:</userinput> The file
|
|
|
|
-<filename>tmp~</filename> is now moved back to
|
|
|
|
-<filename>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' login/Makefile >
|
|
|
|
-tmp~:</userinput> This sed command replaces all occurences of
|
|
|
|
-<filename>root</filename> in
|
|
|
|
-<filename>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~ 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>
|
|
|
|
|
|
+<filename>/usr/bin/perl</filename>. The output is then written to the
|
|
|
|
+original <filename>malloc/Makefile.in</filename> which is used during
|
|
|
|
+configuration. This is done because Glibc can't autodetect perl since
|
|
|
|
+it hasn't been installed yet.</para>
|
|
|
|
+
|
|
|
|
+<para><userinput>sed 's/root/0' login/Makefile.backup >
|
|
|
|
+login/Makefile:</userinput> This sed command replaces all occurences of
|
|
|
|
+<filename>root</filename> in <filename>login/Makefile.backup</filename>
|
|
|
|
+with 0. This is because we don't have glibc on the LFS system yet, so
|
|
|
|
+usernames can't be resolved to their user id's. Therefore, we replace
|
|
|
|
+the username root with user id 0.</para>
|
|
|
|
|
|
<para><userinput>--enable-add-ons:</userinput> This enables the add-on that
|
|
<para><userinput>--enable-add-ons:</userinput> This enables the add-on that
|
|
we install with Glibc: linuxthreads</para>
|
|
we install with Glibc: linuxthreads</para>
|
|
@@ -44,18 +34,16 @@ we install with Glibc: linuxthreads</para>
|
|
pt_chown program to be installed in the /usr/bin directory.</para>
|
|
pt_chown program to be installed in the /usr/bin directory.</para>
|
|
|
|
|
|
<para><userinput>sed 's/cross-compiling = yes/cross-compiling = no/'
|
|
<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 determine this, so it automatically defaults 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>
|
|
|
|
|
|
+config.make.backup > config.make:</userinput> This time, sed searches
|
|
|
|
+through <filename>config.make.backup</filename> and replaces all occurences
|
|
|
|
+of <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 determine this, so it automatically defaults to a cross-compiler.
|
|
|
|
+Compiling the test program failes because Glibc hasn't been installed
|
|
|
|
+yet.</para>
|
|
|
|
|
|
<para><userinput>exec /bin/bash:</userinput>This command will
|
|
<para><userinput>exec /bin/bash:</userinput>This command will
|
|
start a new bash shell which will replace the current shell. This is
|
|
start a new bash shell which will replace the current shell. This is
|