[3f8be484] | 1 | <?xml version="1.0" encoding="ISO-8859-1"?> |
---|
[aa18ac0] | 2 | <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" |
---|
| 3 | "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [ |
---|
[3f8be484] | 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 |
---|
[9f08378] | 14 | constructing the CLFS system in earnest. The installation of this |
---|
[3f8be484] | 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 | |
---|
[89336bc] | 24 | <para os="b">If using compiler optimizations, please review the |
---|
[2627330] | 25 | optimization hint at <ulink url="&hints-root;Optimization"/>. |
---|
[89336bc] | 26 | Compiler optimizations can make a program run slightly faster, but |
---|
| 27 | they may also cause compilation difficulties and problems when |
---|
| 28 | running the program. If a package refuses to compile when using |
---|
| 29 | optimization, try to compile it without optimization and see if |
---|
| 30 | that fixes the problem. Even if the package |
---|
[3f8be484] | 31 | does compile when using optimization, there is the risk it may have |
---|
| 32 | been compiled incorrectly because of the complex interactions between |
---|
[82f7fed] | 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 |
---|
[9f08378] | 37 | builders of CLFS are encouraged to build without custom optimizations. |
---|
[3f8be484] | 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 | |
---|
[89336bc] | 51 | <para os="d">To keep track of which package installs particular files, a |
---|
[1322a63] | 52 | package manager can be used. For a general overview of different styles of |
---|
| 53 | package managers, please take a look at the next page.</para> |
---|
[3f8be484] | 54 | |
---|
| 55 | </sect1> |
---|