source: chapter04/chapter04.xml@ dfddb12

10.0 10.0-rc1 10.1 10.1-rc1 11.0 11.0-rc1 11.0-rc2 11.0-rc3 11.1 11.1-rc1 11.2 11.2-rc1 11.3 11.3-rc1 12.0 12.0-rc1 12.1 12.1-rc1 6.0 6.1 6.1.1 6.3 6.4 6.5 6.6 6.7 6.8 7.0 7.1 7.2 7.3 7.4 7.5 7.5-systemd 7.6 7.6-systemd 7.7 7.7-systemd 7.8 7.8-systemd 7.9 7.9-systemd 8.0 8.1 8.2 8.3 8.4 9.0 9.1 arm bdubbs/gcc13 ml-11.0 multilib renodr/libudev-from-systemd s6-init trunk v5_1 v5_1_1 xry111/arm64 xry111/arm64-12.0 xry111/clfs-ng xry111/lfs-next xry111/loongarch xry111/loongarch-12.0 xry111/loongarch-12.1 xry111/mips64el xry111/pip3 xry111/rust-wip-20221008 xry111/update-glibc
Last change on this file since dfddb12 was dfddb12, checked in by Greg Schafer <greg@…>, 20 years ago

Upgraded to Lfs-Utils-0.4.2, Tcl-8.4.5 and Zlib-1.2.1. Obsoletes the Zlib Vsnprintf patch.

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@3128 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

  • Property mode set to 100644
File size: 11.4 KB
Line 
1<chapter id="chapter04" xreflabel="Chapter 4">
2<title>The materials: packages and patches</title>
3<?dbhtml filename="chapter04.html" dir="chapter04"?>
4
5
6<sect1 id="ch04-introduction">
7<title>Introduction</title>
8<?dbhtml filename="introduction.html" dir="chapter04"?>
9
10<para>Below is a list of packages you need to download for building a basic
11Linux system. The listed version numbers correspond to versions of the
12software that are <emphasis>known</emphasis> to work, and this book is
13based upon them. Unless you are an experienced LFS builder, we highly
14recommend not to try out newer versions, as the build commands for one
15version may not work with a newer version. Also, there is often a good
16reason for not using the latest version due to known problems that haven't
17been worked around yet.</para>
18
19<para>All the URLs, when possible, refer to the project's page at
20<ulink url="http://www.freshmeat.net/"/>. The Freshmeat
21pages will give you easy access to the official download sites as well as
22project websites, mailing lists, FAQs, changelogs and more.</para>
23
24<para>We can't guarantee that these download locations are always available.
25In case a download location has changed since this book was published, please
26try to google for the package. Should you remain unsuccessful with this, you
27can consult the book's errata page at
28<ulink url="http://linuxfromscratch.org/lfs/print/"/> or, better yet, try one
29of the alternative means of downloading listed on
30<ulink url="http://linuxfromscratch.org/lfs/packages.html"/>.</para>
31
32<para>You'll need to store all the downloaded packages and patches somewhere
33that is conveniently available throughout the entire build. You'll also need a
34working directory in which to unpack the sources and build them. A scheme that
35works well is to use <filename>$LFS/sources</filename> as the place to store
36the tarballs and patches, <emphasis>and</emphasis> as a working directory.
37This way everything you need will be located on the LFS partition and available
38during all stages of the building process.</para>
39
40<para>So you may want to execute, as <emphasis>root</emphasis>, the following
41command before starting your download session:</para>
42
43<screen><userinput>mkdir $LFS/sources</userinput></screen>
44
45<para>And make this directory writable (and sticky) for your normal user -- as
46you won't do the downloading as <emphasis>root</emphasis>, we guess:</para>
47
48<screen><userinput>chmod a+wt $LFS/sources</userinput></screen>
49
50<!--
51<para>For your convenience the top of the list contains a link to a file
52you can use with the <ulink url="http://wget.sunsite.dk">wget</ulink>
53program. Using this file and the <userinput>wget</userinput> program will
54make it easy to download all the files at once, rather than downloading each
55and every individual file manually.</para>
56-->
57
58</sect1>
59
60
61<sect1 id="ch04-packages">
62<title>All the packages</title>
63<?dbhtml filename="packages.html" dir="chapter04"?>
64
65<para>Download or otherwise obtain the following packages:</para>
66
67<literallayout>
68Autoconf (&autoconf-version;) - &autoconf-size;:
69<ulink url="http://freshmeat.net/projects/autoconf/"/>
70
71Automake (&automake-version;) - &automake-size;:
72<ulink url="http://freshmeat.net/projects/automake/"/>
73
74Bash (&bash-version;) - &bash-size;:
75<ulink url="http://freshmeat.net/projects/gnubash/"/>
76
77Binutils (&binutils-version;) - &binutils-size;:
78<ulink url="http://freshmeat.net/projects/binutils/"/>
79
80Bison (&bison-version;) - &bison-size;:
81<ulink url="http://freshmeat.net/projects/bison/"/>
82
83Bzip2 (&bzip2-version;) - &bzip2-size;:
84<ulink url="http://freshmeat.net/projects/bzip2/"/>
85
86Coreutils (&coreutils-version;) - &coreutils-size;:
87<ulink url="http://freshmeat.net/projects/coreutils/"/>
88
89DejaGnu (&dejagnu-version;) - &dejagnu-size;:
90<ulink url="http://freshmeat.net/projects/dejagnu/"/>
91
92Diffutils (&diffutils-version;) - &diffutils-size;:
93<ulink url="http://freshmeat.net/projects/diffutils/"/>
94
95E2fsprogs (&e2fsprogs-version;) - &e2fsprogs-size;:
96<ulink url="http://freshmeat.net/projects/e2fsprogs/"/>
97
98Ed (&ed-version;) - &ed-size;:
99<ulink url="http://freshmeat.net/projects/ed/"/>
100
101Expect (&expect-version;) - &expect-size;:
102<ulink url="http://freshmeat.net/projects/expect/"/>
103
104File (&file-version;) - &file-size;: (*) See Note Below
105<ulink url="http://freshmeat.net/projects/file/"/>
106
107Findutils (&findutils-version;) - &findutils-size;:
108<ulink url="http://freshmeat.net/projects/findutils/"/>
109
110Flex (&flex-version;) - &flex-size;:
111<ulink url="ftp://ftp.gnu.org/gnu/non-gnu/flex/"/>
112
113Gawk (&gawk-version;) - &gawk-size;:
114<ulink url="http://freshmeat.net/projects/gnuawk/"/>
115
116GCC (&gcc-2953-version;) - &gcc-2953-size;:
117<ulink url="http://freshmeat.net/projects/gcc/"/>
118
119GCC-core (&gcc-version;) - &gcc-core-size;:
120<ulink url="http://freshmeat.net/projects/gcc/"/>
121
122GCC-g++ (&gcc-version;) - &gcc-gpp-size;:
123<ulink url="http://freshmeat.net/projects/gcc/"/>
124
125GCC-testsuite (&gcc-version;) - &gcc-testsuite-size;:
126<ulink url="http://freshmeat.net/projects/gcc/"/>
127
128Gettext (&gettext-version;) - &gettext-size;:
129<ulink url="http://freshmeat.net/projects/gettext/"/>
130
131Glibc (&glibc-version;) - &glibc-size;:
132<ulink url="http://freshmeat.net/projects/glibc/"/>
133
134Glibc-linuxthreads (&glibc-version;) - &glibc-threads-size;:
135<ulink url="http://freshmeat.net/projects/glibc/"/>
136
137Grep (&grep-version;) - &grep-size;:
138<ulink url="http://freshmeat.net/projects/grep/"/>
139
140Groff (&groff-version;) - &groff-size;:
141<ulink url="http://freshmeat.net/projects/groff/"/>
142
143Grub (&grub-version;) - &grub-size;:
144<ulink url="ftp://alpha.gnu.org/pub/gnu/grub/"/>
145
146Gzip (&gzip-version;) - &gzip-size;:
147<ulink url="ftp://alpha.gnu.org/gnu/gzip/"/>
148
149Inetutils (&inetutils-version;) - &inetutils-size;:
150<ulink url="http://freshmeat.net/projects/inetutils/"/>
151
152Kbd (&kbd-version;) - &kbd-size;:
153<ulink url="http://freshmeat.net/projects/kbd/"/>
154
155Less (&less-version;) - &less-size;:
156<ulink url="http://freshmeat.net/projects/less/"/>
157
158LFS-Bootscripts (&bootscripts-version;) - &bootscripts-size;:
159<ulink url="&http;/lfs-bootscripts-&bootscripts-version;.tar.bz2"/>
160
161Lfs-Utils (&lfs-utils-version;) - &lfs-utils-size;:
162<ulink url="http://www.linuxfromscratch.org/~winkie/downloads/lfs-utils/"/>
163
164Libtool (&libtool-version;) - &libtool-size;:
165<ulink url="http://freshmeat.net/projects/libtool/"/>
166
167Linux (&kernel-version;) - &kernel-size;:
168<ulink url="http://freshmeat.net/projects/linux/"/>
169
170M4 (&m4-version;) - &m4-size;:
171<ulink url="http://freshmeat.net/projects/gnum4/"/>
172
173Make (&make-version;) - &make-size;:
174<ulink url="http://freshmeat.net/projects/gnumake"/>
175
176MAKEDEV (&makedev-version;) - &makedev-size;:
177<ulink url="&http;/MAKEDEV-&makedev-version;.bz2"/>
178
179Man (&man-version;) - &man-size;:
180<ulink url="http://freshmeat.net/projects/man/"/>
181
182Man-pages (&man-pages-version;) - &man-pages-size;:
183<ulink url="http://freshmeat.net/projects/man-pages/"/>
184
185Modutils (&modutils-version;) - &modutils-size;:
186<ulink url="http://freshmeat.net/projects/modutils/"/>
187
188Ncurses (&ncurses-version;) - &ncurses-size;:
189<ulink url="http://freshmeat.net/projects/ncurses/"/>
190
191Net-tools (&net-tools-version;) - &net-tools-size;:
192<ulink url="http://freshmeat.net/projects/net-tools/"/>
193
194Patch (&patch-version;) - &patch-size;:
195<ulink url="http://freshmeat.net/projects/patch/"/>
196
197Perl (&perl-version;) - &perl-size;:
198<ulink url="http://freshmeat.net/projects/perl/"/>
199
200Procinfo (&procinfo-version;) - &procinfo-size;:
201<ulink url="http://freshmeat.net/projects/procinfo/"/>
202
203Procps (&procps-version;) - &procps-size;:
204<ulink url="http://freshmeat.net/projects/procps/"/>
205
206Psmisc (&psmisc-version;) - &psmisc-size;:
207<ulink url="http://freshmeat.net/projects/psmisc/"/>
208
209Sed (&sed-version;) - &sed-size;:
210<ulink url="http://freshmeat.net/projects/sed/"/>
211
212Shadow (&shadow-version;) - &shadow-size;:
213<ulink url="http://freshmeat.net/projects/shadow/"/>
214
215Sysklogd (&sysklogd-version;) - &sysklogd-size;:
216<ulink url="http://freshmeat.net/projects/sysklogd/"/>
217
218Sysvinit (&sysvinit-version;) - &sysvinit-size;:
219<ulink url="http://freshmeat.net/projects/sysvinit/"/>
220
221Tar (&tar-version;) - &tar-size;:
222<ulink url="ftp://alpha.gnu.org/gnu/tar/"/>
223
224Tcl (&tcl-version;) - &tcl-size;:
225<ulink url="http://freshmeat.net/projects/tcltk/"/>
226
227Texinfo (&texinfo-version;) - &texinfo-size;:
228<ulink url="http://freshmeat.net/projects/texinfo/"/>
229
230Util-linux (&util-linux-version;) - &util-linux-size;:
231<ulink url="http://freshmeat.net/projects/util-linux/"/>
232
233Vim (&vim-version;) - &vim-size;:
234<ulink url="http://freshmeat.net/projects/vim/"/>
235
236Zlib (&zlib-version;) - &zlib-size;:
237<ulink url="http://freshmeat.net/projects/zlib/"/>
238
239Total size of these packages: &all-size-mb;
240</literallayout>
241
242<note><para>File (&file-version;) may not be available by the time you read
243this. The master download location is known to remove old versions when new
244ones are released. Please refer to the corresponding section in
245<xref linkend="appendixa"/> for an alternate download location.</para></note>
246
247</sect1>
248
249
250<sect1 id="ch04-patches">
251<title>Needed patches</title>
252<?dbhtml filename="patches.html" dir="chapter04"?>
253
254<para>Besides all those packages, you'll also need several patches. These
255correct tiny mistakes in the packages that should be fixed by the maintainer,
256or just make some small modifications to bend things our way. You'll need the
257following:</para>
258
259<literallayout>
260Bash Patch - &bash-patch-size;:
261<ulink url="&patches-root;&bash-patch;"/>
262
263Bison Attribute Patch - &bison-patch-size;:
264<ulink url="&patches-root;&bison-patch;"/>
265
266Coreutils Hostname Patch - &coreutils-hostname-patch-size;:
267<ulink url="&patches-root;&coreutils-hostname-patch;"/>
268
269Coreutils Uname Patch - &coreutils-uname-patch-size;:
270<ulink url="&patches-root;&coreutils-uname-patch;"/>
271
272Ed Mkstemp Patch - &ed-patch-size;:
273<ulink url="&patches-root;&ed-patch;"/>
274
275Expect Spawn Patch - &expect-patch-size;:
276<ulink url="&patches-root;&expect-patch;"/>
277
278Gawk Libexecdir Patch - &gawk-patch-size;:
279<ulink url="&patches-root;&gawk-patch;"/>
280
281GCC No-Fixincludes Patch - &gcc-nofixincludes-patch-size;:
282<ulink url="&patches-root;&gcc-nofixincludes-patch;"/>
283
284GCC Specs Patch - &gcc-specs-patch-size;:
285<ulink url="&patches-root;&gcc-specs-patch;"/>
286
287GCC-2 Patch - &gcc-2953-patch-size;:
288<ulink url="&patches-root;&gcc-2953-patch;"/>
289
290GCC-2 No-Fixincludes Patch - &gcc-2953-no-fixinc-patch-size;:
291<ulink url="&patches-root;&gcc-2953-no-fixinc-patch;"/>
292
293GCC-2 Return-Type Patch - &gcc-2953-returntype-fix-patch-size;:
294<ulink url="&patches-root;&gcc-2953-returntype-fix-patch;"/>
295
296Glibc Sscanf Patch - &glibc-sscanf-patch-size;:
297<ulink url="&patches-root;&glibc-sscanf-patch;"/>
298
299Kbd More-Programs Patch - &kbd-patch-size;:
300<ulink url="&patches-root;&kbd-patch;"/>
301
302Man 80-Columns Patch - &man-80cols-patch-size;:
303<ulink url="&patches-root;&man-80cols-patch;"/>
304
305Ncurses Etip Patch - &ncurses-etip-patch-size;:
306<ulink url="&patches-root;&ncurses-etip-patch;"/>
307
308Net-tools Mii-Tool-Gcc33 Patch - &net-tools-mii-patch-size;:
309<ulink url="&patches-root;&net-tools-mii-patch;"/>
310
311Perl Libc Patch - &perl-libc-patch-size;:
312<ulink url="&patches-root;&perl-libc-patch;"/>
313
314Shadow Newgrp Patch - &shadow-patch-size;:
315<ulink url="&patches-root;&shadow-patch;"/>
316</literallayout>
317
318<para>In addition to the above required patches, there exist a number of
319optional ones created by the LFS community. Most of these solve slight
320problems, or enable some functionality that's not enabled by default. Feel
321free to examine the patches database, located at
322<ulink url="http://www.linuxfromscratch.org/patches/"/>, and pick any
323additional patches you wish to use.</para>
324
325</sect1>
326
327</chapter>
328
Note: See TracBrowser for help on using the repository browser.