1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
3 <!ENTITY % general-entities SYSTEM "../general.ent">
6 <sect1 id="ch-system-introduction">
7 <title>Introduction</title>
8 <?dbhtml filename="introduction.html"?>
10 <para>In this chapter we enter the building site, and start
11 constructing our LFS system in earnest. That is, we chroot into
12 our temporary mini Linux system, create some auxiliary things,
13 and then start installing all the packages, one by one.</para>
15 <para>The installation of all this software is pretty straightforward,
16 and you will probably think it would be much shorter to give here
17 the generic installation instructions and explain in full only the
18 installation of those packages that require an alternate method.
19 Although we agree with that, we nevertheless choose to give the
20 full instructions for each and every package, simply to minimize
21 the possibilities for mistakes.</para>
23 <para>The key to learning what makes a Linux system work is to know
24 what each package is used for and why the user (or the system) needs it.
25 For this purpose for every installed package a summary of its content is
26 given followed by concise descriptions of each program and library it
29 <para>If you plan to use compiler optimizations in this chapter, take a look at
30 the optimization hint at <ulink url="&hints-root;optimization.txt"/>. Compiler
31 optimizations can make a program run slightly faster, but they may also cause
32 compilation difficulties and even problems when running the program. If a
33 package refuses to compile when using optimization, try to compile it without
34 optimization and see if the problem goes away. Even if the package does compile
35 when using optimization, there is the risk it may have been compiled incorrectly
36 due to complex interactions between the code and build tools. In short, the
37 small potential gains achieved in using compiler optimization are generally
38 outweighed by the risk. First time builders of LFS are encouraged to build
39 without custom optimizations. Your system will still be very fast and very
40 stable at the same time.</para>
42 <para>The order in which packages are installed in this chapter has
43 to be strictly followed, to ensure that no program gets a path referring
44 to <filename class="directory">/tools</filename> hard-wired into it.
45 For the same reason, <emphasis>do not </emphasis> compile packages
46 in parallel. Compiling in parallel may save you some time (especially on
47 dual-CPU machines), but it could result in a program containing a
48 hard-wired path to <filename class="directory">/tools</filename>,
49 which will cause the program to stop working when that directory
52 <para>Before the installation instructions each installation page gives some
53 information about the package: a concise description of what it contains,
54 approximately how long it will take to build it, how much disk space it needs
55 during this building process, the official download location of the package
56 (in case you just want to update a few of them), and which other packages it
57 needs in order to be built successfully. After the installation instructions
58 follows a list of programs and libraries that the package installs, together
59 with a series of short descriptions of these.</para>
61 <para>If you wish to keep track of which package installs what files, you may
62 want to use a package manager. For a general overview of package managers have
63 a look at <ulink url="&blfs-root;view/cvs/introduction/important.html"/>. And
64 for a package management method specifically geared towards LFS see
65 <ulink url="&hints-root;more_control_and_pkg_man.txt"/>.</para>