source: chapter04/chapter04.xml@ 7f1fcd8

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_0 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 7f1fcd8 was 7f1fcd8, checked in by Alex Gronenwoud <alex@…>, 21 years ago

Adding several cross reference tags.

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

  • Property mode set to 100644
File size: 11.7 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;:
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</sect1>
243
244
245<sect1 id="ch04-patches">
246<title>Needed patches</title>
247<?dbhtml filename="patches.html" dir="chapter04"?>
248
249<para>Besides all those packages, you'll also need several patches. These
250correct tiny mistakes in the packages that should be fixed by the maintainer,
251or just make some small modifications to bend things our way. You'll need the
252following:</para>
253
254<literallayout>
255Bash Patch - &bash-patch-size;:
256<ulink url="&patches-root;&bash-patch;"/>
257
258Bison Attribute Patch - &bison-patch-size;:
259<ulink url="&patches-root;&bison-patch;"/>
260
261Coreutils Hostname Patch - &coreutils-hostname-patch-size;:
262<ulink url="&patches-root;&coreutils-hostname-patch;"/>
263
264Coreutils Uname Patch - &coreutils-uname-patch-size;:
265<ulink url="&patches-root;&coreutils-uname-patch;"/>
266
267Ed Mkstemp Patch - &ed-patch-size;:
268<ulink url="&patches-root;&ed-patch;"/>
269
270Expect Spawn Patch - &expect-patch-size;:
271<ulink url="&patches-root;&expect-patch;"/>
272
273Gawk Libexecdir Patch - &gawk-patch-size;:
274<ulink url="&patches-root;&gawk-patch;"/>
275
276GCC No-Fixincludes Patch - &gcc-nofixincludes-patch-size;:
277<ulink url="&patches-root;&gcc-nofixincludes-patch;"/>
278
279GCC Specs Patch - &gcc-specs-patch-size;:
280<ulink url="&patches-root;&gcc-specs-patch;"/>
281
282GCC Suppress-Libiberty Patch - &gcc-suppress-libiberty-patch-size;:
283<ulink url="&patches-root;&gcc-suppress-libiberty-patch;"/>
284
285GCC-2 Patch - &gcc-2953-patch-size;:
286<ulink url="&patches-root;&gcc-2953-patch;"/>
287
288GCC-2 No-Fixincludes Patch - &gcc-2953-no-fixinc-patch-size;:
289<ulink url="&patches-root;&gcc-2953-no-fixinc-patch;"/>
290
291GCC-2 Return-Type Patch - &gcc-2953-returntype-fix-patch-size;:
292<ulink url="&patches-root;&gcc-2953-returntype-fix-patch;"/>
293
294Glibc Sscanf Patch - &glibc-sscanf-patch-size;:
295<ulink url="&patches-root;&glibc-sscanf-patch;"/>
296
297Grub Gcc33 Patch - &grub-patch-size;:
298<ulink url="&patches-root;&grub-patch;"/>
299
300Kbd More-Programs Patch - &kbd-patch-size;:
301<ulink url="&patches-root;&kbd-patch;"/>
302
303Man 80-Columns Patch - &man-80cols-patch-size;:
304<ulink url="&patches-root;&man-80cols-patch;"/>
305
306Man Manpath Patch - &man-manpath-patch-size;:
307<ulink url="&patches-root;&man-manpath-patch;"/>
308
309Man Pager Patch - &man-pager-patch-size;:
310<ulink url="&patches-root;&man-pager-patch;"/>
311
312Ncurses Etip Patch - &ncurses-etip-patch-size;:
313<ulink url="&patches-root;&ncurses-etip-patch;"/>
314
315Ncurses Vsscanf Patch - &ncurses-vsscanf-patch-size;:
316<ulink url="&patches-root;&ncurses-vsscanf-patch;"/>
317
318Net-tools Mii-Tool-Gcc33 Patch - &net-tools-mii-patch-size;:
319<ulink url="&patches-root;&net-tools-mii-patch;"/>
320
321Perl Libc Patch - &perl-libc-patch-size;:
322<ulink url="&patches-root;&perl-libc-patch;"/>
323
324Procps Locale Patch - &procps-patch-size;:
325<ulink url="&patches-root;&procps-patch;"/>
326
327Shadow Newgrp Patch - &shadow-patch-size;:
328<ulink url="&patches-root;&shadow-patch;"/>
329
330Zlib Vsnprintf Patch - &zlib-patch-size;:
331<ulink url="&patches-root;&zlib-patch;"/>
332</literallayout>
333
334<para>In addition to the above required patches, there exist a number of
335optional ones created by the LFS community. Most of these solve slight
336problems, or enable some functionality that's not enabled by default. Feel
337free to examine the patches database, located at
338<ulink url="http://www.linuxfromscratch.org/patches/"/>, and pick any
339additional patches you wish to use.</para>
340
341</sect1>
342
343</chapter>
344
Note: See TracBrowser for help on using the repository browser.