瀏覽代碼

first set of commits for keep-chap5-chap6-seperate

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@1896 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Gerard Beekmans 23 年之前
父節點
當前提交
5e2cb65219

+ 7 - 0
chapter01/changelog.xml

@@ -27,6 +27,13 @@
 
 
 </para></listitem>
 </para></listitem>
 
 
+<listitem><para>May 23rd, 2002 [gerard]: Implemented the
+keep_chap5_and_chap6_sep lfs-hint. Highlights of the change: added
+findutils and util-linux to chapter 5, installed everything from chapter 5
+into <filename class="directory">$LFS/static</filename> and re-ordered the
+installation of packages in chapter 6 to prevent hard-wiring the wrong path
+(files from <filename class="directory">$LFS/static</filename>).</para></listitem>
+
 <listitem><para>May 23rd, 2002 [gerard]: Appendix A - E2fsprogs: Added some
 <listitem><para>May 23rd, 2002 [gerard]: Appendix A - E2fsprogs: Added some
 more descriptions.</para></listitem>
 more descriptions.</para></listitem>
 
 

+ 3 - 6
chapter05/bash-inst.xml

@@ -21,10 +21,9 @@ following commands as user root:</para>
 commands:</para>
 commands:</para>
 
 
 <para><screen><userinput>./configure --enable-static-link \
 <para><screen><userinput>./configure --enable-static-link \
-&nbsp;&nbsp;&nbsp;&nbsp;--prefix=$LFS/usr --bindir=$LFS/bin --with-curses &amp;&amp;
+&nbsp;&nbsp;&nbsp;&nbsp;--prefix=$LFS/static --with-curses &amp;&amp;
 make &amp;&amp;
 make &amp;&amp;
-make install &amp;&amp;
-ln -sf bash $LFS/bin/sh</userinput></screen></para>
+make install</userinput></screen></para>
 
 
 <para>If the make install phase ends with something along the lines of</para>
 <para>If the make install phase ends with something along the lines of</para>
 
 
@@ -46,9 +45,7 @@ chapter 6, so you can ignore it.</para>
 
 
 <para>When we tested it with the latest Debian version, the last two
 <para>When we tested it with the latest Debian version, the last two
 commands were executed because the install process didn't return with a
 commands were executed because the install process didn't return with a
-value larger than 0. But you would do good to check if you have the
-<filename class="symlink">$LFS/bin/sh</filename> symlink on your LFS
-partition. If not, run the last two commands manually now.</para>
+value larger than 0.</para>
 
 
 </sect2>
 </sect2>
 
 

+ 3 - 3
chapter05/binutils-inst.xml

@@ -13,9 +13,9 @@ warned.</para>
 
 
 <para><screen><userinput>mkdir ../binutils-build &amp;&amp;
 <para><screen><userinput>mkdir ../binutils-build &amp;&amp;
 cd ../binutils-build &amp;&amp;
 cd ../binutils-build &amp;&amp;
-../binutils-&binutils-version;/configure --prefix=$LFS/usr --disable-nls &amp;&amp;
-make tooldir=$LFS/usr LDFLAGS=-all-static &amp;&amp;
-make tooldir=$LFS/usr install</userinput></screen></para>
+../binutils-&binutils-version;/configure --prefix=$LFS/static --disable-nls &amp;&amp;
+make tooldir=$LFS/static LDFLAGS=-all-static &amp;&amp;
+make tooldir=$LFS/static install</userinput></screen></para>
 
 
 </sect2>
 </sect2>
 
 

+ 1 - 4
chapter05/bzip2-inst.xml

@@ -4,10 +4,7 @@
 <para>Install Bzip2 by running the following commands:</para>
 <para>Install Bzip2 by running the following commands:</para>
 
 
 <para><screen><userinput>make CC="gcc -static" &amp;&amp;
 <para><screen><userinput>make CC="gcc -static" &amp;&amp;
-make PREFIX=$LFS/usr install &amp;&amp;
-mv $LFS/usr/bin/{bzcat,bunzip2,bzip2,bzip2recover} $LFS/bin &amp;&amp;
-cp $LFS/usr/bin/{bzless,bzmore} $LFS/bin &amp;&amp;
-rm $LFS/usr/bin/{bzless,bzmore}</userinput></screen></para>
+make PREFIX=$LFS/static install</userinput></screen></para>
 
 
 <para>Although it's not strictly a part of a basic LFS system it's worth
 <para>Although it's not strictly a part of a basic LFS system it's worth
 mentioning that a patch for Tar can be downloaded which enables the tar
 mentioning that a patch for Tar can be downloaded which enables the tar

+ 3 - 4
chapter05/chapter05.xml

@@ -4,18 +4,18 @@
 
 
 &c5-introduction;
 &c5-introduction;
 &c5-whystatic;
 &c5-whystatic;
+&c5-creatingstaticdir;
 &c5-installasuser;
 &c5-installasuser;
-&c5-creatingdirs;
 &c5-bash;
 &c5-bash;
 &c5-binutils;
 &c5-binutils;
 &c5-bzip2;
 &c5-bzip2;
 &c5-diffutils;
 &c5-diffutils;
 &c5-fileutils;
 &c5-fileutils;
+&c5-findutils;
 &c5-gawk;
 &c5-gawk;
 &c5-gcc;
 &c5-gcc;
 &c5-grep;
 &c5-grep;
 &c5-gzip;
 &c5-gzip;
-&c5-kernel;
 &c5-make;
 &c5-make;
 &c5-patch;
 &c5-patch;
 &c5-sed;
 &c5-sed;
@@ -23,8 +23,7 @@
 &c5-tar;
 &c5-tar;
 &c5-texinfo;
 &c5-texinfo;
 &c5-textutils;
 &c5-textutils;
-&c5-pwdgroup;
-&c5-proc;
+&c5-utillinux;
 
 
 </chapter>
 </chapter>
 
 

+ 1 - 1
chapter05/diffutils-inst.xml

@@ -4,7 +4,7 @@
 <para>Install Diffutils by running the following commands:</para>
 <para>Install Diffutils by running the following commands:</para>
 
 
 <para><screen><userinput>CPPFLAGS=-Dre_max_failures=re_max_failures2 \
 <para><screen><userinput>CPPFLAGS=-Dre_max_failures=re_max_failures2 \
-./configure --prefix=$LFS/usr --disable-nls &amp;&amp;
+./configure --prefix=$LFS/static --disable-nls &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
 make install</userinput></screen></para>
 make install</userinput></screen></para>
 
 

+ 2 - 4
chapter05/fileutils-inst.xml

@@ -28,11 +28,9 @@ sed -e 's/\(.*\)\(fopen-safer\.c \)\\/\1\2atexit.c \\/' \
 
 
 <para>Install Fileutils by running the following commands:</para>
 <para>Install Fileutils by running the following commands:</para>
 
 
-<para><screen><userinput>./configure --disable-nls \
-&nbsp;&nbsp;&nbsp;&nbsp;--prefix=$LFS/usr --bindir=$LFS/bin &amp;&amp;
+<para><screen><userinput>./configure --disable-nls --prefix=$LFS/static &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
-make install &amp;&amp;
-ln -sf ../../bin/install $LFS/usr/bin</userinput></screen></para>
+make install</userinput></screen></para>
 
 
 <para>Once you have installed Fileutils, you can test whether the
 <para>Once you have installed Fileutils, you can test whether the
 segmentation fault problem has been avoided by running
 segmentation fault problem has been avoided by running

+ 2 - 2
chapter05/gawk-inst.xml

@@ -18,8 +18,8 @@ sed -e '/^datadir/s/awk/gawk/' \
 -e '/^libexecdir/s%/awk%%' awklib/Makefile.in.backup \
 -e '/^libexecdir/s%/awk%%' awklib/Makefile.in.backup \
 &nbsp;&nbsp;&nbsp;&nbsp;&gt; awklib/Makefile.in &amp;&amp;
 &nbsp;&nbsp;&nbsp;&nbsp;&gt; awklib/Makefile.in &amp;&amp;
 CPPFLAGS=-Dre_max_failures=re_max_failures2 \
 CPPFLAGS=-Dre_max_failures=re_max_failures2 \
-./configure --prefix=$LFS/usr --disable-nls \
-&nbsp;&nbsp;&nbsp;&nbsp;--libexecdir=$LFS/usr/bin &amp;&amp;
+./configure --prefix=$LFS/static --disable-nls \
+&nbsp;&nbsp;&nbsp;&nbsp;--libexecdir=$LFS/static/bin &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
 make install</userinput></screen></para>
 make install</userinput></screen></para>
 
 

+ 5 - 7
chapter05/gcc-inst.xml

@@ -17,15 +17,13 @@ been warned.</para>
 <para><screen><userinput>patch -Np1 -i ../gcc-&gcc-patch-version;.patch &amp;&amp;
 <para><screen><userinput>patch -Np1 -i ../gcc-&gcc-patch-version;.patch &amp;&amp;
 mkdir ../gcc-build &amp;&amp;
 mkdir ../gcc-build &amp;&amp;
 cd ../gcc-build &amp;&amp;
 cd ../gcc-build &amp;&amp;
-../gcc-&gcc-version;/configure --prefix=/usr --enable-languages=c,c++ \
+../gcc-&gcc-version;/configure --prefix=/static --enable-languages=c,c++ \
 &nbsp;&nbsp;&nbsp;--disable-nls --disable-shared --enable-threads=posix &amp;&amp;
 &nbsp;&nbsp;&nbsp;--disable-nls --disable-shared --enable-threads=posix &amp;&amp;
 make BOOT_LDFLAGS=-static bootstrap &amp;&amp;
 make BOOT_LDFLAGS=-static bootstrap &amp;&amp;
-make prefix=$LFS/usr install &amp;&amp;
-ln -sf ../usr/bin/cpp $LFS/lib &amp;&amp;
-ln -sf ../bin/cpp $LFS/usr/lib &amp;&amp;
-ln -sf gcc $LFS/usr/bin/cc &amp;&amp;
-rmdir $LFS/usr/*-gnu/include &amp;&amp;
-rmdir $LFS/usr/*-gnu</userinput></screen></para>
+make prefix=$LFS/static install &amp;&amp;
+ln -s gcc $LFS/static/bin/cc &amp;&amp;
+rmdir $LFS/static/*-gnu/include &amp;&amp;
+rmdir $LFS/static/*-gnu</userinput></screen></para>
 
 
 </sect2>
 </sect2>
 
 

+ 2 - 2
chapter05/grep-inst.xml

@@ -4,8 +4,8 @@
 <para>Install Grep by running the following commands:</para>
 <para>Install Grep by running the following commands:</para>
 
 
 <para><screen><userinput>CPPFLAGS=-Dre_max_failures=re_max_failures2 \
 <para><screen><userinput>CPPFLAGS=-Dre_max_failures=re_max_failures2 \
-./configure --prefix=$LFS/usr --bindir=$LFS/bin \
-&nbsp;&nbsp;&nbsp;&nbsp;--disable-nls --disable-perl-regexp &amp;&amp;
+./configure --prefix=$LFS/static --disable-nls \
+&nbsp;&nbsp;&nbsp;&nbsp;--disable-perl-regexp &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
 make install</userinput></screen></para>
 make install</userinput></screen></para>
 
 

+ 2 - 4
chapter05/gzip-inst.xml

@@ -3,11 +3,9 @@
 
 
 <para>Install Gzip by running the following commands:</para>
 <para>Install Gzip by running the following commands:</para>
 
 
-<para><screen><userinput>./configure --prefix=$LFS/usr &amp;&amp;
+<para><screen><userinput>./configure --prefix=$LFS/static &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
-make install &amp;&amp;
-cp $LFS/usr/bin/{gunzip,gzip} $LFS/bin &amp;&amp;
-rm $LFS/usr/bin/{gunzip,gzip}</userinput></screen></para>
+make install</userinput></screen></para>
 
 
 </sect2>
 </sect2>
 
 

+ 4 - 4
chapter05/installasuser.xml

@@ -16,11 +16,11 @@ commands as root will create a new user "lfs":</para>
 <para><screen><userinput>useradd -s /bin/bash -m lfs &amp;&amp;
 <para><screen><userinput>useradd -s /bin/bash -m lfs &amp;&amp;
 passwd lfs</userinput></screen></para>
 passwd lfs</userinput></screen></para>
 
 
-<para>Now it's time to change the permissions on your LFS partitions
-so user "lfs" will have write access to it. Run the following command
-as root to change the ownership of the LFS partition to user "lfs":</para>
+<para>Now we need to give proper permissions to the <filename
+class="directory">$LFS/static</filename> directory so user "lfs" can write
+to it:</para>
 
 
-<para><screen><userinput>chown -R lfs $LFS</userinput></screen></para>
+<para><screen><userinput>chown -R lfs $LFS/static</userinput></screen></para>
 
 
 <para>Now you can login as user "lfs". You can do this two ways: either
 <para>Now you can login as user "lfs". You can do this two ways: either
 the normal way through the console or the display manager, or with
 the normal way through the console or the display manager, or with

+ 6 - 0
chapter05/introduction.xml

@@ -19,6 +19,12 @@ example of such a dependency is that you need a compiler to install a
 compiler, and you're going to need a shell to install a shell and that
 compiler, and you're going to need a shell to install a shell and that
 compiler.</para>
 compiler.</para>
 
 
+<para>All the files from this chapter will be installed under the <filename
+class="directory">$LFS/static</filename> directory. By doing it this way,
+we keep the installation from this chapter seperate from the final
+installation in the next chapter. Everything done here is only temporarily
+so we don't want it to pollute the to-be LFS system.</para>
+
 <para>The key to learning what makes Linux tick is to know exactly what packages
 <para>The key to learning what makes Linux tick is to know exactly what packages
 are used for and why a user or the system needs them. Descriptions
 are used for and why a user or the system needs them. Descriptions
 of the package content are provided after the Installation subsection of each
 of the package content are provided after the Installation subsection of each

+ 4 - 4
chapter05/make-inst.xml

@@ -3,16 +3,16 @@
 
 
 <para>Install Make by running the following commands:</para>
 <para>Install Make by running the following commands:</para>
 
 
-<para><screen><userinput>./configure --prefix=$LFS/usr --disable-nls &amp;&amp;
+<para><screen><userinput>./configure --prefix=$LFS/static --disable-nls &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
 make install</userinput></screen></para>
 make install</userinput></screen></para>
 
 
 <para>During the make install phase you will see this warning:</para>
 <para>During the make install phase you will see this warning:</para>
 
 
-<blockquote><screen>chgrp: changing group of `/mnt/lfs/usr/bin/make': Operation not permitted
-/mnt/lfs/usr/bin/make needs to be owned by group kmem and setgid;
+<blockquote><screen>chgrp: changing group of `/mnt/lfs/static/bin/make': Operation not permitted
+/mnt/lfs/static/bin/make needs to be owned by group kmem and setgid;
 otherwise the `-l' option will probably not work. You may need special
 otherwise the `-l' option will probably not work. You may need special
-privileges to complete the installation of /mnt/lfs/usr/bin/make.</screen></blockquote>
+privileges to complete the installation of /mnt/lfs/static/bin/make.</screen></blockquote>
 
 
 <para>You can safely ignore this warning. make doesn't need to be owned by
 <para>You can safely ignore this warning. make doesn't need to be owned by
 group kmem and setgid for the <emphasis>-l</emphasis> option to work (which
 group kmem and setgid for the <emphasis>-l</emphasis> option to work (which

+ 1 - 1
chapter05/patch-inst.xml

@@ -4,7 +4,7 @@
 <para>Install Patch by running the following commands:</para>
 <para>Install Patch by running the following commands:</para>
 
 
 <para><screen><userinput>CPPFLAGS=-D_GNU_SOURCE \
 <para><screen><userinput>CPPFLAGS=-D_GNU_SOURCE \
-./configure --prefix=$LFS/usr &amp;&amp;
+./configure --prefix=$LFS/static &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
 make install</userinput></screen></para>
 make install</userinput></screen></para>
 
 

+ 1 - 1
chapter05/sed-inst.xml

@@ -4,7 +4,7 @@
 <para>Install Sed by running the following commands:</para>
 <para>Install Sed by running the following commands:</para>
 
 
 <para><screen><userinput>CPPFLAGS=-Dre_max_failures=re_max_failures2 \
 <para><screen><userinput>CPPFLAGS=-Dre_max_failures=re_max_failures2 \
-./configure --prefix=$LFS/usr --bindir=$LFS/bin &amp;&amp;
+./configure --prefix=$LFS/static &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
 make install</userinput></screen></para>
 make install</userinput></screen></para>
 
 

+ 2 - 5
chapter05/shellutils-inst.xml

@@ -3,13 +3,10 @@
 
 
 <para>Install Sh-utils by running the following commands:</para>
 <para>Install Sh-utils by running the following commands:</para>
 
 
-<para><screen><userinput>./configure --prefix=$LFS/usr \
+<para><screen><userinput>./configure --prefix=$LFS/static \
 &nbsp;&nbsp;&nbsp;&nbsp;--disable-nls &amp;&amp;
 &nbsp;&nbsp;&nbsp;&nbsp;--disable-nls &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
-make install &amp;&amp;
-mv $LFS/usr/bin/{basename,date,echo,false,hostname} $LFS/bin &amp;&amp;
-mv $LFS/usr/bin/{pwd,sleep,stty,test,true,uname} $LFS/bin &amp;&amp;
-mv $LFS/usr/bin/chroot $LFS/usr/sbin</userinput></screen></para>
+make install</userinput></screen></para>
 
 
 <para>During the make install stage you will see the following warning:</para>
 <para>During the make install stage you will see the following warning:</para>
 
 

+ 2 - 3
chapter05/tar-inst.xml

@@ -12,9 +12,8 @@ for gzip files).</para>
 
 
 <para>Install Tar by running the following commands:</para>
 <para>Install Tar by running the following commands:</para>
 
 
-<para><screen><userinput>./configure --prefix=$LFS/usr \
-&nbsp;&nbsp;&nbsp;&nbsp;--disable-nls --libexecdir=$LFS/usr/bin \
-&nbsp;&nbsp;&nbsp;&nbsp;--bindir=$LFS/bin &amp;&amp; 
+<para><screen><userinput>./configure --prefix=$LFS/static \
+&nbsp;&nbsp;&nbsp;&nbsp;--disable-nls --libexecdir=$LFS/static/bin &amp;&amp; 
 make LDFLAGS=-static &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
 make install</userinput></screen></para>
 make install</userinput></screen></para>
 
 

+ 1 - 1
chapter05/texinfo-inst.xml

@@ -3,7 +3,7 @@
 
 
 <para>Install Texinfo by running the following commands:</para>
 <para>Install Texinfo by running the following commands:</para>
 
 
-<para><screen><userinput>./configure --prefix=$LFS/usr \
+<para><screen><userinput>./configure --prefix=$LFS/static \
 &nbsp;&nbsp;&nbsp;&nbsp;--disable-nls &amp;&amp;
 &nbsp;&nbsp;&nbsp;&nbsp;--disable-nls &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
 make install</userinput></screen></para>
 make install</userinput></screen></para>

+ 2 - 3
chapter05/textutils-inst.xml

@@ -3,11 +3,10 @@
 
 
 <para>Install Textutils by running the following commands:</para>
 <para>Install Textutils by running the following commands:</para>
 
 
-<para><screen><userinput>./configure --prefix=$LFS/usr \
+<para><screen><userinput>./configure --prefix=$LFS/static \
 &nbsp;&nbsp;&nbsp;&nbsp;--disable-nls &amp;&amp;
 &nbsp;&nbsp;&nbsp;&nbsp;--disable-nls &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
 make LDFLAGS=-static &amp;&amp;
-make install &amp;&amp;
-mv $LFS/usr/bin/{cat,head} $LFS/bin</userinput></screen></para>
+make install</userinput></screen></para>
 
 
 </sect2>
 </sect2>
 
 

+ 0 - 2
chapter06/bzip2-inst.xml

@@ -5,14 +5,12 @@
 
 
 <para><screen><userinput>make -f Makefile-libbz2_so &amp;&amp;
 <para><screen><userinput>make -f Makefile-libbz2_so &amp;&amp;
 make &amp;&amp;
 make &amp;&amp;
-rm /usr/bin/bz* &amp;&amp;
 make PREFIX=/usr install &amp;&amp;
 make PREFIX=/usr install &amp;&amp;
 cp bzip2-shared /bin/bzip2 &amp;&amp;
 cp bzip2-shared /bin/bzip2 &amp;&amp;
 ln -s libbz2.so.1.0 libbz2.so &amp;&amp;
 ln -s libbz2.so.1.0 libbz2.so &amp;&amp;
 cp -a libbz2.so* /lib &amp;&amp;
 cp -a libbz2.so* /lib &amp;&amp;
 ln -sf ../../lib/libbz2.so /usr/lib&amp;&amp;
 ln -sf ../../lib/libbz2.so /usr/lib&amp;&amp;
 rm /usr/bin/{bunzip2,bzcat,bzip2} &amp;&amp;
 rm /usr/bin/{bunzip2,bzcat,bzip2} &amp;&amp;
-rm /bin/{bzless,bzmore} &amp;&amp;
 mv /usr/bin/{bzip2recover,bzless,bzmore} /bin &amp;&amp;
 mv /usr/bin/{bzip2recover,bzless,bzmore} /bin &amp;&amp;
 ln -sf bzip2 /bin/bunzip2 &amp;&amp;
 ln -sf bzip2 /bin/bunzip2 &amp;&amp;
 ln -sf bzip2 /bin/bzcat</userinput></screen></para>
 ln -sf bzip2 /bin/bzcat</userinput></screen></para>

+ 4 - 7
chapter06/changingowner.xml

@@ -6,19 +6,16 @@
 all files and directories that were installed in chapter 5 back to root.
 all files and directories that were installed in chapter 5 back to root.
 Run the following commands to do so:</para>
 Run the following commands to do so:</para>
 
 
-<para><screen><userinput>chown 0:0 / /proc &amp;&amp;
-chown -R 0:0 /{bin,boot,dev,etc,home,lib,mnt,opt,root,sbin,tmp,usr,var}</userinput></screen></para>
+<para><screen><userinput>chown -R 0:0 /</userinput></screen></para>
 
 
 <para>Depending on the filesystem you created on the LFS partition, you may
 <para>Depending on the filesystem you created on the LFS partition, you may
 have a /lost+found directory. If so, run:</para>
 have a /lost+found directory. If so, run:</para>
 
 
 <para><screen><userinput>chown 0:0 /lost+found</userinput></screen></para>
 <para><screen><userinput>chown 0:0 /lost+found</userinput></screen></para>
 
 
-<para>These commands will change the ownership of the root partition and
-the <filename>/proc</filename> directory to root, plus everything under
-the directories mentioned in the second line. In these commands, 0:0 is
-used instead of the usual root:root, because the username root can't be
-resolved because glibc is not yet installed.</para>
+<para>These commands will change the ownership of the root partition to
+root. In these commands, 0:0 is used instead of the usual root:root, because
+the username root can't be resolved because glibc is not yet installed.</para>
 
 
 </sect1>
 </sect1>
 
 

+ 15 - 11
chapter06/chapter06.xml

@@ -4,42 +4,50 @@
 
 
 &c6-introduction;
 &c6-introduction;
 &c6-aboutdebug;
 &c6-aboutdebug;
-&c6-bashprofile;
 &c6-chroot;
 &c6-chroot;
 &c6-changingowner;
 &c6-changingowner;
+&c6-creatingdirs;
+&c6-pwdgroup;
 &c6-mtablink;
 &c6-mtablink;
+&c6-mountproc;
+&c6-createfiles;
+&c6-kernel;
 &c6-glibc;
 &c6-glibc;
 &c6-makedev;
 &c6-makedev;
+&c6-gcc;
 &c6-manpages;
 &c6-manpages;
 &c6-findutils;
 &c6-findutils;
 &c6-gawk;
 &c6-gawk;
 &c6-ncurses;
 &c6-ncurses;
 &c6-vim;
 &c6-vim;
-&c6-gcc;
 &c6-bison;
 &c6-bison;
 &c6-less;
 &c6-less;
 &c6-groff;
 &c6-groff;
-&c6-man;
+&c6-textutils;
+&c6-sed;
+&c6-flex;
+&c6-binutils;
+&c6-fileutils;
+&c6-shellutils;
+&c6-gettext;
+&c6-nettools;
 &c6-perl;
 &c6-perl;
 &c6-m4;
 &c6-m4;
 &c6-texinfo;
 &c6-texinfo;
 &c6-autoconf;
 &c6-autoconf;
 &c6-automake;
 &c6-automake;
 &c6-bash;
 &c6-bash;
-&c6-flex;
 &c6-file;
 &c6-file;
 &c6-libtool;
 &c6-libtool;
 &c6-bin86;
 &c6-bin86;
-&c6-binutils;
 &c6-bzip2;
 &c6-bzip2;
 &c6-ed;
 &c6-ed;
-&c6-gettext;
 &c6-kbd;
 &c6-kbd;
 &c6-diffutils;
 &c6-diffutils;
 &c6-e2fsprogs;
 &c6-e2fsprogs;
-&c6-fileutils;
 &c6-grep;
 &c6-grep;
 &c6-gzip;
 &c6-gzip;
+&c6-man;
 &c6-lilo;
 &c6-lilo;
 &c6-make;
 &c6-make;
 &c6-modutils;
 &c6-modutils;
@@ -49,14 +57,10 @@
 &c6-procps;
 &c6-procps;
 &c6-psmisc;
 &c6-psmisc;
 &c6-reiserfs;
 &c6-reiserfs;
-&c6-sed;
-&c6-shellutils;
-&c6-nettools;
 &c6-shadowpwd;
 &c6-shadowpwd;
 &c6-sysklogd;
 &c6-sysklogd;
 &c6-sysvinit;
 &c6-sysvinit;
 &c6-tar;
 &c6-tar;
-&c6-textutils;
 &c6-utillinux;
 &c6-utillinux;
 &c6-bootscripts;
 &c6-bootscripts;
 &c6-configure;
 &c6-configure;

+ 4 - 4
chapter06/chroot.xml

@@ -13,10 +13,10 @@ actually /mnt/lfs but the shell doesn't know that).</para>
 <para><screen>&c6-chrootcmd;</screen></para>
 <para><screen>&c6-chrootcmd;</screen></para>
 
 
 <para>The -i option will clear all environment variables for as long as you
 <para>The -i option will clear all environment variables for as long as you
-are in the chroot'ed environment and only the HOME and TERM variables
-are set. The TERM=$TERM construction will set the TERM variable inside
-chroot to the same value as outside chroot which is needed for programs
-like vim and less to operate properly. If you need other variables
+are in the chroot'ed environment and only the HOME, TERM, PS1 and PATH
+variables are set. The TERM=$TERM construction will set the TERM variable
+inside chroot to the same value as outside chroot which is needed for
+programs like vim and less to operate properly. If you need other variables
 present, such as CFLAGS or CXXFLAGS, you need to set them again.</para>
 present, such as CFLAGS or CXXFLAGS, you need to set them again.</para>
 
 
 <para>Now that we are inside a chroot'ed environment, we can continue to
 <para>Now that we are inside a chroot'ed environment, we can continue to

+ 4 - 2
chapter06/chrootcmd.xml

@@ -1,2 +1,4 @@
-<userinput>chroot $LFS /usr/bin/env -i HOME=/root \
-&nbsp;&nbsp;&nbsp;&nbsp;TERM=$TERM /bin/bash --login</userinput>
+<userinput>chroot $LFS /static/bin/env -i HOME=/root TERM=$TERM \
+&nbsp;&nbsp;&nbsp;&nbsp;PS1='\u:\w\$ ' \
+&nbsp;&nbsp;&nbsp;&nbsp;PATH=/bin:/usr/bin:/sbin:/usr/sbin:/static/bin \
+&nbsp;&nbsp;&nbsp;&nbsp;/static/bin/bash --login</userinput>

+ 0 - 10
chapter06/glibc-exp.xml

@@ -1,16 +1,6 @@
 <sect2>
 <sect2>
 <title>Command explanations</title>
 <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 doesn't exist, the installation will abort with an error 
-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>
-
 <para><userinput>sed 's%\$(PERL)%/usr/bin/perl%' 
 <para><userinput>sed 's%\$(PERL)%/usr/bin/perl%' 
 malloc/Makefile.backup &gt; malloc/Makefile:</userinput> This sed command
 malloc/Makefile.backup &gt; malloc/Makefile:</userinput> This sed command
 searches through <filename>malloc/Makefile.backup</filename> and
 searches through <filename>malloc/Makefile.backup</filename> and

+ 2 - 4
chapter06/glibc-inst.xml

@@ -22,9 +22,7 @@ is putting your system at very high risk.</para>
 
 
 <para>Install Glibc by running the following commands:</para>
 <para>Install Glibc by running the following commands:</para>
 
 
-<para><screen><userinput>mknod -m 0666 /dev/null c 1 3 &amp;&amp;
-touch /etc/ld.so.conf &amp;&amp;
-cp malloc/Makefile malloc/Makefile.backup &amp;&amp;
+<para><screen><userinput>cp malloc/Makefile malloc/Makefile.backup &amp;&amp;
 sed 's%\$(PERL)%/usr/bin/perl%' \
 sed 's%\$(PERL)%/usr/bin/perl%' \
 &nbsp;&nbsp;&nbsp;&nbsp;malloc/Makefile.backup &gt; malloc/Makefile &amp;&amp;
 &nbsp;&nbsp;&nbsp;&nbsp;malloc/Makefile.backup &gt; malloc/Makefile &amp;&amp;
 cp login/Makefile login/Makefile.backup &amp;&amp;
 cp login/Makefile login/Makefile.backup &amp;&amp;
@@ -37,7 +35,7 @@ echo "cross-compiling = no" &gt; configparms &amp;&amp;
 make &amp;&amp;
 make &amp;&amp;
 make install &amp;&amp;
 make install &amp;&amp;
 make localedata/install-locales &amp;&amp;
 make localedata/install-locales &amp;&amp;
-exec /bin/bash --login</userinput></screen></para>
+exec /static/bin/bash --login</userinput></screen></para>
 
 
 <para>An alternative to running <userinput>make
 <para>An alternative to running <userinput>make
 localedata/install-locales</userinput> is to only install those locales
 localedata/install-locales</userinput> is to only install those locales

+ 0 - 1
chapter06/grep-inst.xml

@@ -5,7 +5,6 @@
 
 
 <para><screen><userinput>./configure --prefix=/usr --bindir=/bin &amp;&amp;
 <para><screen><userinput>./configure --prefix=/usr --bindir=/bin &amp;&amp;
 make &amp;&amp;
 make &amp;&amp;
-rm /bin/egrep /bin/fgrep &amp;&amp;
 make install</userinput></screen></para>
 make install</userinput></screen></para>
 
 
 </sect2>
 </sect2>

+ 8 - 0
chapter06/introduction.xml

@@ -18,5 +18,13 @@ faster, but may also cause some compilation problems. If you run into problems
 after having used optimization, always try it without optimizing to see if 
 after having used optimization, always try it without optimizing to see if 
 the problem persists.</para>
 the problem persists.</para>
 
 
+<para>Please refrain from installing more than one package at a time, even
+if it may safe you time (especially with dual CPU machines). If you install
+the wrong package at the wrong time, it may hard-wire program paths to
+<filename class="directory">$LFS/static</filename> which will cause the
+programs to stop working once the static directory is removed. The order
+packages are installed in this chapter have to be followed exactly to be
+sure nothing is hard-wiring the static paths.</para>
+
 </sect1>
 </sect1>
 
 

+ 2 - 1
chapter06/makedev-inst.xml

@@ -6,7 +6,8 @@ won't create a directory for you to cd into.</para>
 
 
 <para>Create the device files by running the following commands:</para>
 <para>Create the device files by running the following commands:</para>
 
 
-<para><screen><userinput>cp MAKEDEV-&makedev-version; /dev/MAKEDEV &amp;&amp;
+<para><screen><userinput>rm /dev/null &amp;&amp;
+cp MAKEDEV-&makedev-version; /dev/MAKEDEV &amp;&amp;
 cd /dev &amp;&amp;
 cd /dev &amp;&amp;
 chmod 754 MAKEDEV</userinput></screen></para>
 chmod 754 MAKEDEV</userinput></screen></para>
 
 

+ 2 - 1
chapter06/man-inst.xml

@@ -3,7 +3,8 @@
 
 
 <para>Run the following commands to install man:</para>
 <para>Run the following commands to install man:</para>
 
 
-<para><screen><userinput>./configure -default &amp;&amp;
+<para><screen><userinput>PATH=$PATH:/usr/bin:/bin \
+&nbsp;&nbsp;&nbsp;&nbsp;./configure -default &amp;&amp;
 make &amp;&amp;
 make &amp;&amp;
 make install &amp;&amp;
 make install &amp;&amp;
 mv /usr/share/misc/man.conf /etc</userinput></screen></para>
 mv /usr/share/misc/man.conf /etc</userinput></screen></para>

+ 1 - 0
chapter06/man.xml

@@ -6,6 +6,7 @@
 Estimated required disk space:  &man-compsize;</screen>
 Estimated required disk space:  &man-compsize;</screen>
 
 
 &c6-man-inst;
 &c6-man-inst;
+&c6-man-exp;
 &aa-man-desc;
 &aa-man-desc;
 &aa-man-dep;
 &aa-man-dep;
 
 

+ 1 - 2
chapter06/psmisc-inst.xml

@@ -3,8 +3,7 @@
 
 
 <para>Install Psmisc by running the following commands:</para>
 <para>Install Psmisc by running the following commands:</para>
 
 
-<para><screen><userinput>./configure --prefix=/usr \
-&nbsp;&nbsp;&nbsp;&nbsp;--exec-prefix=/ &amp;&amp;
+<para><screen><userinput>./configure --prefix=/usr --exec-prefix=/ &amp;&amp;
 make &amp;&amp;
 make &amp;&amp;
 make install</userinput></screen></para>
 make install</userinput></screen></para>
 
 

+ 0 - 1
entities/bash.ent

@@ -4,7 +4,6 @@
 <!ENTITY c5-bash-inst SYSTEM "../chapter05/bash-inst.xml">
 <!ENTITY c5-bash-inst SYSTEM "../chapter05/bash-inst.xml">
 <!ENTITY c5-bash-exp SYSTEM "../chapter05/bash-exp.xml">
 <!ENTITY c5-bash-exp SYSTEM "../chapter05/bash-exp.xml">
 
 
-<!ENTITY c6-bashprofile SYSTEM "../chapter06/bashprofile.xml">
 <!ENTITY c6-bash SYSTEM "../chapter06/bash.xml">
 <!ENTITY c6-bash SYSTEM "../chapter06/bash.xml">
 <!ENTITY c6-bash-inst SYSTEM "../chapter06/bash-inst.xml">
 <!ENTITY c6-bash-inst SYSTEM "../chapter06/bash-inst.xml">
 
 

+ 1 - 3
entities/chapter05.ent

@@ -1,7 +1,5 @@
 <!ENTITY chapter05 SYSTEM "../chapter05/chapter05.xml">
 <!ENTITY chapter05 SYSTEM "../chapter05/chapter05.xml">
 <!ENTITY c5-introduction SYSTEM "../chapter05/introduction.xml">
 <!ENTITY c5-introduction SYSTEM "../chapter05/introduction.xml">
 <!ENTITY c5-whystatic SYSTEM "../chapter05/whystatic.xml">
 <!ENTITY c5-whystatic SYSTEM "../chapter05/whystatic.xml">
+<!ENTITY c5-creatingstaticdir SYSTEM "../chapter05/creatingstaticdir.xml">
 <!ENTITY c5-installasuser SYSTEM "../chapter05/installasuser.xml">
 <!ENTITY c5-installasuser SYSTEM "../chapter05/installasuser.xml">
-<!ENTITY c5-creatingdirs SYSTEM "../chapter05/creatingdirs.xml">
-<!ENTITY c5-pwdgroup SYSTEM "../chapter05/pwdgroup.xml">
-<!ENTITY c5-proc SYSTEM "../chapter05/proc.xml">

+ 4 - 0
entities/chapter06.ent

@@ -4,7 +4,11 @@
 <!ENTITY c6-chrootcmd SYSTEM "../chapter06/chrootcmd.xml">
 <!ENTITY c6-chrootcmd SYSTEM "../chapter06/chrootcmd.xml">
 <!ENTITY c6-chroot SYSTEM "../chapter06/chroot.xml">
 <!ENTITY c6-chroot SYSTEM "../chapter06/chroot.xml">
 <!ENTITY c6-changingowner SYSTEM "../chapter06/changingowner.xml">
 <!ENTITY c6-changingowner SYSTEM "../chapter06/changingowner.xml">
+<!ENTITY c6-creatingdirs SYSTEM "../chapter06/creatingdirs.xml">
+<!ENTITY c6-pwdgroup SYSTEM "../chapter06/pwdgroup.xml">
 <!ENTITY c6-mtablink SYSTEM "../chapter06/mtablink.xml">
 <!ENTITY c6-mtablink SYSTEM "../chapter06/mtablink.xml">
+<!ENTITY c6-mountproc SYSTEM "../chapter06/mountproc.xml">
+<!ENTITY c6-createfiles SYSTEM "../chapter06/createfiles.xml">
 <!ENTITY c6-configure SYSTEM "../chapter06/configure.xml">
 <!ENTITY c6-configure SYSTEM "../chapter06/configure.xml">
 <!ENTITY c6-cf-ldso SYSTEM "../chapter06/config-ldso.xml">
 <!ENTITY c6-cf-ldso SYSTEM "../chapter06/config-ldso.xml">
 <!ENTITY c6-cf-keyboard SYSTEM "../chapter06/config-keyboard.xml">
 <!ENTITY c6-cf-keyboard SYSTEM "../chapter06/config-keyboard.xml">

+ 4 - 0
entities/findutils.ent

@@ -1,6 +1,10 @@
 <!ENTITY c3-findutils SYSTEM "../chapter03/findutils.xml">
 <!ENTITY c3-findutils SYSTEM "../chapter03/findutils.xml">
 <!ENTITY c3-findutils-patch SYSTEM "../chapter03/findutils-patch.xml">
 <!ENTITY c3-findutils-patch SYSTEM "../chapter03/findutils-patch.xml">
 
 
+<!ENTITY c5-findutils SYSTEM "../chapter05/findutils.xml">
+<!ENTITY c5-findutils-exp SYSTEM "../chapter05/findutils-exp.xml">
+<!ENTITY c5-findutils-inst SYSTEM "../chapter05/findutils-inst.xml">
+
 <!ENTITY c6-findutils SYSTEM "../chapter06/findutils.xml">
 <!ENTITY c6-findutils SYSTEM "../chapter06/findutils.xml">
 <!ENTITY c6-findutils-exp SYSTEM "../chapter06/findutils-exp.xml">
 <!ENTITY c6-findutils-exp SYSTEM "../chapter06/findutils-exp.xml">
 <!ENTITY c6-findutils-inst SYSTEM "../chapter06/findutils-inst.xml">
 <!ENTITY c6-findutils-inst SYSTEM "../chapter06/findutils-inst.xml">

+ 4 - 4
entities/kernel.ent

@@ -1,9 +1,9 @@
 <!ENTITY c3-kernel SYSTEM "../chapter03/kernel.xml">
 <!ENTITY c3-kernel SYSTEM "../chapter03/kernel.xml">
 
 
-<!ENTITY c5-kernel SYSTEM "../chapter05/kernel.xml">
-<!ENTITY c5-kernel-inst SYSTEM "../chapter05/kernel-inst.xml">
-<!ENTITY c5-kernel-exp SYSTEM "../chapter05/kernel-exp.xml">
-<!ENTITY c5-kernel-exp-headers SYSTEM "../chapter05/kernel-exp-headers.xml">
+<!ENTITY c6-kernel SYSTEM "../chapter06/kernel.xml">
+<!ENTITY c6-kernel-inst SYSTEM "../chapter06/kernel-inst.xml">
+<!ENTITY c6-kernel-exp SYSTEM "../chapter06/kernel-exp.xml">
+<!ENTITY c6-kernel-exp-headers SYSTEM "../chapter06/kernel-exp-headers.xml">
 
 
 <!ENTITY c8-kernel SYSTEM "../chapter08/kernel.xml">
 <!ENTITY c8-kernel SYSTEM "../chapter08/kernel.xml">
 
 

+ 1 - 0
entities/man.ent

@@ -2,6 +2,7 @@
 
 
 <!ENTITY c6-man SYSTEM "../chapter06/man.xml">
 <!ENTITY c6-man SYSTEM "../chapter06/man.xml">
 <!ENTITY c6-man-inst SYSTEM "../chapter06/man-inst.xml">
 <!ENTITY c6-man-inst SYSTEM "../chapter06/man-inst.xml">
+<!ENTITY c6-man-exp SYSTEM "../chapter06/man-exp.xml">
 
 
 <!ENTITY aa-man SYSTEM "../appendixa/man.xml">
 <!ENTITY aa-man SYSTEM "../appendixa/man.xml">
 <!ENTITY aa-man-desc SYSTEM "../appendixa/man-desc.xml">
 <!ENTITY aa-man-desc SYSTEM "../appendixa/man-desc.xml">

+ 3 - 0
entities/utillinux.ent

@@ -1,5 +1,8 @@
 <!ENTITY c3-utillinux SYSTEM "../chapter03/utillinux.xml">
 <!ENTITY c3-utillinux SYSTEM "../chapter03/utillinux.xml">
 
 
+<!ENTITY c5-utillinux SYSTEM "../chapter05/utillinux.xml">
+<!ENTITY c5-utillinux-inst SYSTEM "../chapter05/utillinux-inst.xml">
+
 <!ENTITY c6-utillinux SYSTEM "../chapter06/utillinux.xml">
 <!ENTITY c6-utillinux SYSTEM "../chapter06/utillinux.xml">
 <!ENTITY c6-utillinux-inst SYSTEM "../chapter06/utillinux-inst.xml">
 <!ENTITY c6-utillinux-inst SYSTEM "../chapter06/utillinux-inst.xml">
 <!ENTITY c6-utillinux-exp SYSTEM "../chapter06/utillinux-exp.xml">
 <!ENTITY c6-utillinux-exp SYSTEM "../chapter06/utillinux-exp.xml">