diff options
-rw-r--r-- | chapter01/how.xml | 95 |
1 files changed, 46 insertions, 49 deletions
diff --git a/chapter01/how.xml b/chapter01/how.xml index 5931d1a53..b791285a6 100644 --- a/chapter01/how.xml +++ b/chapter01/how.xml @@ -2,67 +2,64 @@ <title>How things are going to be done</title> <?dbhtml filename="how.html" dir="chapter01"?> -<para>We are going to build the LFS system by using a previously installed -Linux distribution such as Debian, SuSE, Slackware, Mandrake, or Red Hat. -We will use this existing Linux system as a starting platform, because we +<para>You are going to build the LFS system by using a previously installed +Linux distribution such as Debian, Mandrake, Red Hat, etc. +The existing Linux system will be used as a starting point, because you will need tools like a compiler, linker, text editor, and other development -tools to build our system. Ordinarily, the required tools are available by -default if we selected "development" as one of our installation options -when we installed a Linux distribution.</para> +tools to build the system. Ordinarily, the required tools are available by +default if you selected "development" as one of your installation options +when you installed your Linux distribution.</para> <para>After you have downloaded the packages that make up an LFS system, -we will create a new Linux native partition and filesystem. Here is where -the LFS system will be compiled and installed.</para> +you will create a new Linux native partition and filesystem. Here is where +the LFS system will be compiled and installed onto.</para> -<para>The next step, Chapter 5, will discuss the installation of a number of -packages that will form the basic development suite which is used to -build the actual system, or needed to resolve circular dependencies. For -example, you need a compiler to build a new compiler, and you need a shell -in order to install a new shell. The packages in this chapter will be linked -statically.</para> +<para>The next step, Chapter 5, will discuss the installation of a number +of packages that will form the basic development suite which is used to +build the actual system. Some of these packages are needed to resolve +circular dependencies. For example, to compiler a compiler you need a +compiler.</para> -<para>Static linking describes a method of compiling software so that -it does not require the presence of libraries when building is complete. -The resulting program is able to function on its own. The program is able to -do so because the pieces of the program that would normally remain in the -libraries are copied from the libraries and built right into the program. -Ordinarily, software is built with dynamic linking. This conserves storage -space and increases the efficiency of many programs. We statically link -our software in Chapter 5 because we will, in theory, be moving our -development system to a virtual environment where the already mentioned -libraries will be absent. If the software is built dynamically, our -development suite will not function. Since the libraries we are talking -about are provided by our distribution Linux, the goal of Chapter 5 is to -build a development environment where those libraries are not required -and is therefore independent of the distribution.</para> +<para>The first thing that will be done in Chapter 5 is building the +toolchain, which is made up of Binutils, GCC and Glibc. The programs from +these packages will be linked statically in order for them to be +independant of the host system.</para> -<para>In Chapter 6 we will build and install our final system. We will use -the chroot program to enter a virtual environment and start a new shell -whose root directory will be set to the partition where we built all the -Chapter 5 software. This is very similar to rebooting and instructing the -kernel to mount our LFS partition as the root partition. The reason that -we don't actually reboot, but instead chroot, is that creating a bootable -static system requires additional work which simply isn't necessary. As -well, we can continue to use our platform system while we are building LFS. -While software is being compiled and installed you can simply switch to a -different VC (Virtual Console) or X desktop and continue using your -computer normally.</para> +<para>When the first toolchain is built, you will rebuild those three +packages again, this time using the toolchain we just built, rather than +the host system's toolchain. In particular, all programs will be linked +against the new Glibc rather than the host system's Glibc. All subsequent +packages in Chapter 5 will be build and linked using this second toolchain +installation. When this is done (building the second toolchain), the LFS +installation process will no longer depend on the host distribution, with +the exception of the running kernel.</para> -<para>When all the software from Chapter 6 is installed, Chapters 7, 8 and 9 -will help us finalize our installation. We will set up our boot -scripts in Chapter 7. In Chapter 8 we will build our final Linux kernel and -set up the Linux boot loader. Chapter 9 has some pointers to help you after -you finish the book. Then finally, you reboot your system and boot into your -new LFS system, and start to really use it.</para> +<para>In Chapter 6 the real LFS system will be built. The +chroot (change root) program is used to enter a virtual environment and +start a new shell whose root directory will be set to the LFS partition. +This is very similar to rebooting and instructing the kernel to mount the +LFS partition as the root partition. The reason that you don't actually +reboot, but instead chroot, is that creating a bootable system requires +additional work which isn't necessary. As well, chrooting allows you +to continue using the host while LFS is being built. While software is +being installed you can simply switch to a different VC (Virtual Console) +or X desktop and continue using the computer as you normally would.</para> + +<para>When all the software from Chapter 6 is installed, the temporary +tools built in Chapter 5 will be removed. Chapters 7, 8 and 9 will finalize +the installation. The bootscripts are setup in Chapter 7, the kernel and +boot loader are setup in Chapter 8 and Chapter 9 has some pointers to help +you after you finish with the book. Then, finally, you reboot the system +into the new LFS system.</para> <para>This is the process in a nutshell. Detailed information on the steps -we will take are discussed in the chapters and package descriptions as you -progress through them. If something isn't completely clear now, don't worry. -It should become very clear shortly.</para> +you will take are discussed in the chapters and package descriptions as you +progress through them. If something isn't completely clear now, don't +worry, everything will fall into place soon.</para> <para>Please read Chapter 2 carefully as it explains a few important things you should be aware of before you begin to work through Chapters 5 and -later.</para> +beyond.</para> </sect1> |