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