[6370fa6] | 1 | <sect1 id="ch01-how">
|
---|
| 2 | <title>How things are going to be done</title>
|
---|
[04f5529] | 3 | <?dbhtml filename="how.html" dir="chapter01"?>
|
---|
[6370fa6] | 4 |
|
---|
[c61dd1e] | 5 | <para>We are going to build the LFS system by using a previously installed
|
---|
[60ed866] | 6 | Linux distribution such as Debian, SuSE, Slackware, Mandrake, RedHat, etc.
|
---|
[c61dd1e] | 7 | We will use the existing Linux system as the development platform, because
|
---|
[26e62aa] | 8 | we need tools like a compiler, linker, text editor, and other development
|
---|
| 9 | tools to build our system. Ordinarily, the required tools are available by
|
---|
| 10 | default if we selected "development" as one of our installation options
|
---|
| 11 | when we installed a Linux distribution.</para>
|
---|
[6370fa6] | 12 |
|
---|
[26e62aa] | 13 | <para>After you have downloaded the packages that make up an LFS system,
|
---|
| 14 | we will create a new Linux native partition and filesystem. Here is where
|
---|
| 15 | the LFS system will be compiled and installed.</para>
|
---|
[c61dd1e] | 16 |
|
---|
[26e62aa] | 17 | <para>The next step, Chapter 5, will discuss the installation of a number of
|
---|
[c4270ca] | 18 | packages that will form the basic development suite which is used to
|
---|
[c61dd1e] | 19 | build the actual system, or needed to resolve circular dependencies. For
|
---|
| 20 | example, you need a compiler to build a new compiler, and you need a shell
|
---|
| 21 | in order to install a new shell. The packages in this chapter will be linked
|
---|
[60ed866] | 22 | statically.</para>
|
---|
| 23 |
|
---|
| 24 | <para>Static linking describes a method of compiling software so that
|
---|
[c61dd1e] | 25 | it does not require the presence of libraries when building is complete.
|
---|
| 26 | The resulting program is able to function on its own. The program is able to
|
---|
| 27 | do so because the pieces of the program that would normally remain in the
|
---|
| 28 | libraries are copied from the libraries and built right into the program.
|
---|
[60ed866] | 29 | Ordinarily, software is built with dynamic linking. This conserves storage
|
---|
[c61dd1e] | 30 | space and increases the efficiency of many programs. We statically link
|
---|
[26e62aa] | 31 | our software in Chapter 5 because we will, in theory, be moving our
|
---|
[c61dd1e] | 32 | development system to a virtual environment where the already mentioned
|
---|
| 33 | libraries will be absent. If the software is built dynamically, our
|
---|
| 34 | development suite will not function. Since the libraries we are talking
|
---|
[26e62aa] | 35 | about are provided by our distribution Linux, the goal of Chapter 5 is to
|
---|
[c61dd1e] | 36 | build a development environment where those libraries are not required
|
---|
| 37 | and is therefore independent of the distribution.</para>
|
---|
| 38 |
|
---|
[26e62aa] | 39 | <para>In Chapter 6 we will build and install our final system. We will use
|
---|
[c61dd1e] | 40 | the chroot program to enter a virtual environment and start a new shell
|
---|
| 41 | whose root directory will be set to the partition where we built all the
|
---|
[26e62aa] | 42 | Chapter 5 software. This is very similar to rebooting and instructing the
|
---|
[c61dd1e] | 43 | kernel to mount our LFS partition as the root partition. The reason that
|
---|
[26e62aa] | 44 | we don't actually reboot, but instead chroot, is that creating a bootable
|
---|
| 45 | static system requires additional work which simply isn't necessary. As
|
---|
| 46 | well, we can continue to use our platform system while we are building LFS.
|
---|
| 47 | While software is being compiled and installed you can simply switch to a
|
---|
| 48 | different VC (Virtual Console) or X desktop and continue using your
|
---|
[c61dd1e] | 49 | computer normally.</para>
|
---|
| 50 |
|
---|
[26e62aa] | 51 | <para>When all the software from Chapter 6 is installed, Chapters 7, 8 and 9
|
---|
[c61dd1e] | 52 | will help us finalize our installation. We will set up our boot
|
---|
[26e62aa] | 53 | scripts in Chapter 7. In Chapter 8 we will build our final linux kernel and
|
---|
[c61dd1e] | 54 | set up the Linux boot loader. Chapter 9 has some pointers to help you after
|
---|
| 55 | you finish the book. Then finally, you reboot your system and boot into your
|
---|
| 56 | new LFS system, and start to really use it.</para>
|
---|
[32489b5] | 57 |
|
---|
[b822811] | 58 | <para>This is the process in a nutshell. Detailed information on the steps
|
---|
[c61dd1e] | 59 | we will take are discussed in the chapters and package descriptions as you
|
---|
| 60 | progress through them. If something isn't completely clear now, don't worry.
|
---|
| 61 | It should become very clear shortly.</para>
|
---|
[32489b5] | 62 |
|
---|
[26e62aa] | 63 | <para>Please read Chapter 2 carefully as it explains a few important things
|
---|
| 64 | you should be aware of before you begin to work through Chapters 5 and
|
---|
[c61dd1e] | 65 | later.</para>
|
---|
[6370fa6] | 66 |
|
---|
| 67 | </sect1>
|
---|
| 68 |
|
---|