From 5e2cb652195321c7f63b5d22077e583b75118178 Mon Sep 17 00:00:00 2001 From: Gerard Beekmans Date: Sat, 25 May 2002 00:19:47 +0000 Subject: 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 --- chapter06/bzip2-inst.xml | 2 -- chapter06/changingowner.xml | 11 ++++------- chapter06/chapter06.xml | 26 +++++++++++++++----------- chapter06/chroot.xml | 8 ++++---- chapter06/chrootcmd.xml | 6 ++++-- chapter06/glibc-exp.xml | 10 ---------- chapter06/glibc-inst.xml | 6 ++---- chapter06/grep-inst.xml | 1 - chapter06/introduction.xml | 8 ++++++++ chapter06/makedev-inst.xml | 3 ++- chapter06/man-inst.xml | 3 ++- chapter06/man.xml | 1 + chapter06/psmisc-inst.xml | 3 +-- 13 files changed, 43 insertions(+), 45 deletions(-) (limited to 'chapter06') diff --git a/chapter06/bzip2-inst.xml b/chapter06/bzip2-inst.xml index 112b3fa63..8839c3a6d 100644 --- a/chapter06/bzip2-inst.xml +++ b/chapter06/bzip2-inst.xml @@ -5,14 +5,12 @@ make -f Makefile-libbz2_so && make && -rm /usr/bin/bz* && make PREFIX=/usr install && cp bzip2-shared /bin/bzip2 && ln -s libbz2.so.1.0 libbz2.so && cp -a libbz2.so* /lib && ln -sf ../../lib/libbz2.so /usr/lib&& rm /usr/bin/{bunzip2,bzcat,bzip2} && -rm /bin/{bzless,bzmore} && mv /usr/bin/{bzip2recover,bzless,bzmore} /bin && ln -sf bzip2 /bin/bunzip2 && ln -sf bzip2 /bin/bzcat diff --git a/chapter06/changingowner.xml b/chapter06/changingowner.xml index ed50198b7..94bac26ec 100644 --- a/chapter06/changingowner.xml +++ b/chapter06/changingowner.xml @@ -6,19 +6,16 @@ all files and directories that were installed in chapter 5 back to root. Run the following commands to do so: -chown 0:0 / /proc && -chown -R 0:0 /{bin,boot,dev,etc,home,lib,mnt,opt,root,sbin,tmp,usr,var} +chown -R 0:0 / Depending on the filesystem you created on the LFS partition, you may have a /lost+found directory. If so, run: chown 0:0 /lost+found -These commands will change the ownership of the root partition and -the /proc 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. +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. diff --git a/chapter06/chapter06.xml b/chapter06/chapter06.xml index 5f0ce67bb..3ab34012e 100644 --- a/chapter06/chapter06.xml +++ b/chapter06/chapter06.xml @@ -4,42 +4,50 @@ &c6-introduction; &c6-aboutdebug; -&c6-bashprofile; &c6-chroot; &c6-changingowner; +&c6-creatingdirs; +&c6-pwdgroup; &c6-mtablink; +&c6-mountproc; +&c6-createfiles; +&c6-kernel; &c6-glibc; &c6-makedev; +&c6-gcc; &c6-manpages; &c6-findutils; &c6-gawk; &c6-ncurses; &c6-vim; -&c6-gcc; &c6-bison; &c6-less; &c6-groff; -&c6-man; +&c6-textutils; +&c6-sed; +&c6-flex; +&c6-binutils; +&c6-fileutils; +&c6-shellutils; +&c6-gettext; +&c6-nettools; &c6-perl; &c6-m4; &c6-texinfo; &c6-autoconf; &c6-automake; &c6-bash; -&c6-flex; &c6-file; &c6-libtool; &c6-bin86; -&c6-binutils; &c6-bzip2; &c6-ed; -&c6-gettext; &c6-kbd; &c6-diffutils; &c6-e2fsprogs; -&c6-fileutils; &c6-grep; &c6-gzip; +&c6-man; &c6-lilo; &c6-make; &c6-modutils; @@ -49,14 +57,10 @@ &c6-procps; &c6-psmisc; &c6-reiserfs; -&c6-sed; -&c6-shellutils; -&c6-nettools; &c6-shadowpwd; &c6-sysklogd; &c6-sysvinit; &c6-tar; -&c6-textutils; &c6-utillinux; &c6-bootscripts; &c6-configure; diff --git a/chapter06/chroot.xml b/chapter06/chroot.xml index 1bf864b03..0c0dfbf95 100644 --- a/chapter06/chroot.xml +++ b/chapter06/chroot.xml @@ -13,10 +13,10 @@ actually /mnt/lfs but the shell doesn't know that). &c6-chrootcmd; 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. Now that we are inside a chroot'ed environment, we can continue to diff --git a/chapter06/chrootcmd.xml b/chapter06/chrootcmd.xml index 358ef1b40..eefa87e5b 100644 --- a/chapter06/chrootcmd.xml +++ b/chapter06/chrootcmd.xml @@ -1,2 +1,4 @@ -chroot $LFS /usr/bin/env -i HOME=/root \ -    TERM=$TERM /bin/bash --login +chroot $LFS /static/bin/env -i HOME=/root TERM=$TERM \ +    PS1='\u:\w\$ ' \ +    PATH=/bin:/usr/bin:/sbin:/usr/sbin:/static/bin \ +    /static/bin/bash --login diff --git a/chapter06/glibc-exp.xml b/chapter06/glibc-exp.xml index db8657eff..db07d76ff 100644 --- a/chapter06/glibc-exp.xml +++ b/chapter06/glibc-exp.xml @@ -1,16 +1,6 @@ Command explanations -mknod -m 0666 /dev/null c 1 3: Glibc needs a -null device to compile properly. All other devices will be created in the -next section. - -touch /etc/ld.so.conf 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). - sed 's%\$(PERL)%/usr/bin/perl%' malloc/Makefile.backup > malloc/Makefile: This sed command searches through malloc/Makefile.backup and diff --git a/chapter06/glibc-inst.xml b/chapter06/glibc-inst.xml index ae8781b8b..7593b56ca 100644 --- a/chapter06/glibc-inst.xml +++ b/chapter06/glibc-inst.xml @@ -22,9 +22,7 @@ is putting your system at very high risk. Install Glibc by running the following commands: -mknod -m 0666 /dev/null c 1 3 && -touch /etc/ld.so.conf && -cp malloc/Makefile malloc/Makefile.backup && +cp malloc/Makefile malloc/Makefile.backup && sed 's%\$(PERL)%/usr/bin/perl%' \     malloc/Makefile.backup > malloc/Makefile && cp login/Makefile login/Makefile.backup && @@ -37,7 +35,7 @@ echo "cross-compiling = no" > configparms && make && make install && make localedata/install-locales && -exec /bin/bash --login +exec /static/bin/bash --login An alternative to running make localedata/install-locales is to only install those locales diff --git a/chapter06/grep-inst.xml b/chapter06/grep-inst.xml index 69a616a33..17885b7f5 100644 --- a/chapter06/grep-inst.xml +++ b/chapter06/grep-inst.xml @@ -5,7 +5,6 @@ ./configure --prefix=/usr --bindir=/bin && make && -rm /bin/egrep /bin/fgrep && make install diff --git a/chapter06/introduction.xml b/chapter06/introduction.xml index fc8f68e3b..2a59f604c 100644 --- a/chapter06/introduction.xml +++ b/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 the problem persists. +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 +$LFS/static 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. + diff --git a/chapter06/makedev-inst.xml b/chapter06/makedev-inst.xml index d5b9c3b2d..6797a057d 100644 --- a/chapter06/makedev-inst.xml +++ b/chapter06/makedev-inst.xml @@ -6,7 +6,8 @@ won't create a directory for you to cd into. Create the device files by running the following commands: -cp MAKEDEV-&makedev-version; /dev/MAKEDEV && +rm /dev/null && +cp MAKEDEV-&makedev-version; /dev/MAKEDEV && cd /dev && chmod 754 MAKEDEV diff --git a/chapter06/man-inst.xml b/chapter06/man-inst.xml index ac945c018..f67465b91 100644 --- a/chapter06/man-inst.xml +++ b/chapter06/man-inst.xml @@ -3,7 +3,8 @@ Run the following commands to install man: -./configure -default && +PATH=$PATH:/usr/bin:/bin \ +    ./configure -default && make && make install && mv /usr/share/misc/man.conf /etc diff --git a/chapter06/man.xml b/chapter06/man.xml index c8a1e20ee..7e0edc3fd 100644 --- a/chapter06/man.xml +++ b/chapter06/man.xml @@ -6,6 +6,7 @@ Estimated required disk space: &man-compsize; &c6-man-inst; +&c6-man-exp; &aa-man-desc; &aa-man-dep; diff --git a/chapter06/psmisc-inst.xml b/chapter06/psmisc-inst.xml index 43dc13e58..32193ace9 100644 --- a/chapter06/psmisc-inst.xml +++ b/chapter06/psmisc-inst.xml @@ -3,8 +3,7 @@ Install Psmisc by running the following commands: -./configure --prefix=/usr \ -    --exec-prefix=/ && +./configure --prefix=/usr --exec-prefix=/ && make && make install -- cgit v1.2.3-54-g00ecf