introduction.xml 3.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. <?xml version="1.0" encoding="ISO-8859-1"?>
  2. <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
  3. <!ENTITY % general-entities SYSTEM "../general.ent">
  4. %general-entities;
  5. ]>
  6. <sect1 id="ch-system-introduction">
  7. <title>Introduction</title>
  8. <?dbhtml filename="introduction.html"?>
  9. <para>In this chapter, we enter the building site and start
  10. constructing the LFS system in earnest. That is, we chroot into the
  11. temporary mini Linux system, make a few final preparations, and then
  12. begin installing the packages.</para>
  13. <para>The installation of this software is straightforward. Although
  14. in many cases the installation instructions could be made shorter and
  15. more generic, we have opted to provide the full instructions for every
  16. package to minimize the possibilities for mistakes. The key to
  17. learning what makes a Linux system work is to know what each package
  18. is used for and why the user (or the system) needs it. For every
  19. installed package, a summary of its contents is given, followed by
  20. concise descriptions of each program and library the package
  21. installed.</para>
  22. <para>If using the compiler optimizations provided in this chapter,
  23. please review the optimization hint at <ulink
  24. url="&hints-root;optimization.txt"/>. Compiler optimizations can make
  25. a program run slightly faster, but they may also cause compilation
  26. difficulties and problems when running the program. If a package
  27. refuses to compile when using optimization, try to compile it without
  28. optimization and see if that fixes the problem. Even if the package
  29. does compile when using optimization, there is the risk it may have
  30. been compiled incorrectly because of the complex interactions between
  31. the code and build tools. Also note that the <option>-march</option>
  32. and <option>-mtune</option> options may cause problems with the
  33. toolchain packages (Binutils, GCC and Glibc). The small potential
  34. gains achieved in using compiler optimizations are often outweighed by
  35. the risks. First-time builders of LFS are encouraged to build without
  36. custom optimizations. The subsequent system will still run very fast
  37. and be stable at the same time.</para>
  38. <para>The order that packages are installed in this chapter needs to
  39. be strictly followed to ensure that no program accidentally acquires a
  40. path referring to <filename class="directory">/tools</filename>
  41. hard-wired into it. For the same reason, do not compile packages in
  42. parallel. Compiling in parallel may save time (especially on dual-CPU
  43. machines), but it could result in a program containing a hard-wired
  44. path to <filename class="directory">/tools</filename>, which will
  45. cause the program to stop working when that directory is
  46. removed.</para>
  47. <para>Before the installation instructions, each installation page
  48. provides information about the package, including a concise
  49. description of what it contains, approximately how long it will take
  50. to build, how much disk space is required during this building
  51. process, and any other packages needed to successfully build the
  52. package. Following the installation instructions, there is a list of
  53. programs and libraries (along with brief descriptions of these) that
  54. the package installs.</para>
  55. <para>To keep track of which package installs particular files, a package
  56. manager can be used. For a general overview of different styles of package
  57. managers, please refer to <ulink
  58. url="&blfs-root;view/svn/introduction/important.html"/>.
  59. For a package management method specifically geared towards LFS, we recommend <ulink
  60. url="&hints-root;more_control_and_pkg_man.txt"/>.</para>
  61. <note><para>The remainder of this book is to be performed while logged in as
  62. user <emphasis>root</emphasis> and no longer as user <emphasis>lfs</emphasis>.
  63. Also, double check that <envar>$LFS</envar> is set.</para></note>
  64. </sect1>