From fe5b13b40b50e7be2b16cbd477988e7828fcd8ca Mon Sep 17 00:00:00 2001 From: Alex Gronenwoud Date: Wed, 4 Feb 2004 22:22:49 +0000 Subject: [PATCH] Moving Mounting proc to before Chroot, dropping Util-linux, adding an arch script to Perl. git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@3220 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689 --- chapter01/changelog.xml | 4 ++++ chapter05/chapter05.xml | 1 - chapter05/gcc-pass2.xml | 2 +- chapter05/perl.xml | 8 +++++++- chapter06/chapter06.xml | 30 +++++++++++++----------------- chapter06/mountproc.xml | 26 ++++++++------------------ 6 files changed, 33 insertions(+), 38 deletions(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index e57623684..4ce6835a5 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -62,6 +62,10 @@ +February 4th, 2004 [alex]: Chapters 5 + 6 - Moved the Mounting +of proc and devpts to before Chrooting, dropped Util-linux from the tools, and +added a little arch script for Perl. + February 1st, 2004 [gerard]: LFS-5.1-PRE1 release. diff --git a/chapter05/chapter05.xml b/chapter05/chapter05.xml index c4e45d336..a2734acc8 100644 --- a/chapter05/chapter05.xml +++ b/chapter05/chapter05.xml @@ -568,7 +568,6 @@ can now be used to build the rest of the temporary tools. &c5-tar; &c5-texinfo; &c5-bash; -&c5-utillinux; &c5-perl; diff --git a/chapter05/gcc-pass2.xml b/chapter05/gcc-pass2.xml index 982c267d6..462f92f0b 100644 --- a/chapter05/gcc-pass2.xml +++ b/chapter05/gcc-pass2.xml @@ -128,7 +128,7 @@ through to completion and not stop at the first failure. The GCC test suite is very comprehensive and is almost guaranteed to generate a few failures. To get a summary of the test suite results, run this: -../&gcc-dir;/contrib/test_summary | more +../&gcc-dir;/contrib/test_summary | grep -A7 Summ You can compare your results to those posted to the gcc-testresults mailing list for similar configurations to your own. For an example of how diff --git a/chapter05/perl.xml b/chapter05/perl.xml index dccb191c0..7251700c1 100644 --- a/chapter05/perl.xml +++ b/chapter05/perl.xml @@ -17,7 +17,13 @@ patch -Np1 -i ../&perl-libc-patch; -Now prepare Perl for compilation (make sure to get the 'IO Fcntl' +Perl insists on using the arch program to find out +the machine type. Create a little script to mimick this command: + +echo "uname -m" > /tools/bin/arch +chmod 755 /tools/bin/arch + +Now prepare Perl for compilation (make sure you get the 'IO Fcntl' right, they are all letters): ./configure.gnu --prefix=/tools -Dstatic_ext='IO Fcntl' diff --git a/chapter06/chapter06.xml b/chapter06/chapter06.xml index f97d4d777..ef78e75e7 100644 --- a/chapter06/chapter06.xml +++ b/chapter06/chapter06.xml @@ -60,23 +60,22 @@ with a series of short descriptions of these. +&c6-mountproc; Entering the chroot environment -It is time to enter the chroot environment in order to begin installing -the packages we need. Before you can chroot, however, you need to become -root, since only root -can execute the chroot command. +It is time to enter the chroot environment in order to begin building +and installing your final LFS system. -Just like earlier, ensure the LFS environment variable is set up properly -by running echo $LFS and ensuring it shows the path to -your LFS partition's mount point, which is +First check, just like earlier, that the LFS environment variable is set +up properly by running echo $LFS and making sure it +shows the path to your LFS partition's mount point, which is /mnt/lfs if you followed our example. -Become root and run the following command -to enter the chroot environment: +As root, run the following command to enter the +chroot environment: chroot $LFS /tools/bin/env -i \     HOME=/root TERM=$TERM PS1='\u:\w\$ ' \ @@ -108,12 +107,12 @@ is switched off by passing the +h option to You have to make sure all the commands in the rest of this chapter and in the following chapters are run from within the chroot environment. If you ever leave this environment for any reason (rebooting for example), -you must remember to again enter chroot and mount the proc and devpts -file systems (discussed later) before continuing with the installations. +you must remember to first mount the proc and devpts file systems (discussed +in the previous section) and enter chroot again before +continuing with the installations. -Note that the bash prompt will say "I have no name!" This is -normal, as the /etc/passwd file has not been -created yet. +Note that the bash prompt will say "I have no name!" This is normal, as +the /etc/passwd file has not been created yet. @@ -209,9 +208,6 @@ isn't precise, so we created here the directories that we think are needed. -&c6-mountproc; - - Creating essential symlinks diff --git a/chapter06/mountproc.xml b/chapter06/mountproc.xml index e15c3546e..d1d91d9c1 100644 --- a/chapter06/mountproc.xml +++ b/chapter06/mountproc.xml @@ -6,29 +6,19 @@ proc and devpts file systems must be available within the chroot environment. Since kernel version 2.4 a file system can be mounted as many times and in as many places as you like, thus it's not a -problem that these file systems are already mounted on your host system -- +problem that these file systems are already mounted on your host system, especially so because they are virtual file systems. +First you need to become root, since probably only +root can mount these file systems. + The proc file system is the process information pseudo file system through which the kernel provides information about the -status of the system. - -The proc file system is mounted on -/proc by running the following -command: +status of the system. Mount it on /proc +with: mount proc /proc -t proc -You might get warning messages from the mount command, such as -these: - -
warning: can't open /etc/fstab: No such file or directory -not enough memory
- -Ignore these, they're just due to the fact that the system -isn't installed completely yet and some files are missing. The mount itself -will be successful and that's all we care about at this point. - The devpts file system was mentioned earlier and is now the most common way for pseudo terminals (PTYs) to be implemented. @@ -54,8 +44,8 @@ environment. We'll cover this shortly in the aforementioned section. Remember, if for any reason you stop working on your LFS, and start again -later, it's important to check that these file systems are still mounted inside -the chroot environment, otherwise problems are likely to occur. +later, it's important to check that these file systems are mounted again before +entering the chroot environment, otherwise some problems could occur.