1 | <?xml version="1.0" encoding="ISO-8859-1"?>
|
---|
2 | <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
---|
3 | "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
---|
4 | <!ENTITY % general-entities SYSTEM "../general.ent">
|
---|
5 | %general-entities;
|
---|
6 | ]>
|
---|
7 |
|
---|
8 | <sect1 id="ch-materials-introduction">
|
---|
9 | <?dbhtml filename="introduction.html"?>
|
---|
10 |
|
---|
11 | <title>Introduction</title>
|
---|
12 |
|
---|
13 | <para>This chapter includes a list of packages that need to be downloaded in
|
---|
14 | order to build a basic Linux system. The listed version numbers correspond to
|
---|
15 | versions of the software that are known to work, and this book is based on
|
---|
16 | their use. We highly recommend against using newer versions because the build
|
---|
17 | commands for one version may not work with a newer version. The newest package
|
---|
18 | versions may also have problems that require work-arounds. These work-arounds
|
---|
19 | will be developed and stabilized in the development version of the
|
---|
20 | book.</para>
|
---|
21 |
|
---|
22 | <para>Download locations may not always be accessible. If a download
|
---|
23 | location has changed since this book was published, Google (<ulink
|
---|
24 | url="http://www.google.com/"/>) provides a useful search engine for
|
---|
25 | most packages. If this search is unsuccessful, try one of the
|
---|
26 | alternative means of downloading discussed at <ulink
|
---|
27 | url="&lfs-root;lfs/packages.html#packages"/>. </para>
|
---|
28 |
|
---|
29 | <para>Downloaded packages and patches will need to be stored somewhere
|
---|
30 | that is conveniently available throughout the entire build. A working
|
---|
31 | directory is also required to unpack the sources and build them.
|
---|
32 | <filename class="directory">$LFS/sources</filename> can be used both
|
---|
33 | as the place to store the tarballs and patches and as a working
|
---|
34 | directory. By using this directory, the required elements will be
|
---|
35 | located on the LFS partition and will be available during all stages
|
---|
36 | of the building process.</para>
|
---|
37 |
|
---|
38 | <para>To create this directory, execute the following command, as user
|
---|
39 | <systemitem class="username">root</systemitem>, before starting the download
|
---|
40 | session:</para>
|
---|
41 |
|
---|
42 | <screen role="nodump"><userinput>mkdir -v $LFS/sources</userinput></screen>
|
---|
43 |
|
---|
44 | <para>Make this directory writable and sticky. <quote>Sticky</quote>
|
---|
45 | means that even if multiple users have write permission on a
|
---|
46 | directory, only the owner of a file can delete the file within a
|
---|
47 | sticky directory. The following command will enable the write and
|
---|
48 | sticky modes:</para>
|
---|
49 |
|
---|
50 | <screen role="nodump"><userinput>chmod -v a+wt $LFS/sources</userinput></screen>
|
---|
51 |
|
---|
52 | <para>There are several ways to optain all the necessary packages and patches
|
---|
53 | to build LFS:</para>
|
---|
54 |
|
---|
55 | <itemizedlist>
|
---|
56 | <listitem>
|
---|
57 | <para>The files can be downloaded individually as described in the
|
---|
58 | next two sections.</para>
|
---|
59 | </listitem>
|
---|
60 | <listitem>
|
---|
61 | <para>For stable versions of the book, a tarball of all the needed files
|
---|
62 | can be downloaded from one of the LFS files mirrors listed at
|
---|
63 | <ulink url="http://www.linuxfromscratch.org/mirrors.html#files"/>.</para>
|
---|
64 | </listitem>
|
---|
65 | <listitem>
|
---|
66 | <para>The files can be downloaded using <command>wget</command> and
|
---|
67 | a wget-list as described below.</para>
|
---|
68 | </listitem>
|
---|
69 | </itemizedlist>
|
---|
70 |
|
---|
71 | <para>To download all of the packages and patches by using
|
---|
72 | <ulink url="../wget-list">wget-list</ulink> as an input to the
|
---|
73 | <command>wget</command> command, use:</para>
|
---|
74 |
|
---|
75 | <screen role="nodump"><userinput>wget --input-file=wget-list --continue --directory-prefix=$LFS/sources</userinput></screen>
|
---|
76 |
|
---|
77 | <para>Additionally, starting with LFS-7.0, there is a separate file,
|
---|
78 | <ulink url="../md5sums">md5sums</ulink>, which can be used to verify that all
|
---|
79 | the correct packages are available before proceeding. Place that file in
|
---|
80 | <filename class="directory">$LFS/sources</filename> and run:</para>
|
---|
81 |
|
---|
82 | <screen role="nodump"><userinput>pushd $LFS/sources
|
---|
83 | md5sum -c md5sums
|
---|
84 | popd</userinput></screen>
|
---|
85 |
|
---|
86 | <para>This check can be used after retrieving the needed files with any of the
|
---|
87 | methods listed above.</para>
|
---|
88 |
|
---|
89 | </sect1>
|
---|