how.xml 3.7 KB

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