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