1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- <sect1 id="ch01-how">
- <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, RedHat, etc.
- We will use the existing Linux system as the development platform, because
- we need tools like a compiler, linker, text editor, and other necessary
- 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 the distributed Linux.</para>
- <para>After you have downloaded the necessary 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>
- <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>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>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 static
- system that we can boot into requires more work that 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 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>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>
- <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>
- </sect1>
|