diff options
Diffstat (limited to 'chapter03')
-rw-r--r-- | chapter03/introduction.xml | 40 | ||||
-rw-r--r-- | chapter03/packages.xml | 156 | ||||
-rw-r--r-- | chapter03/patches.xml | 38 |
3 files changed, 146 insertions, 88 deletions
diff --git a/chapter03/introduction.xml b/chapter03/introduction.xml index 2573020b6..5791720a5 100644 --- a/chapter03/introduction.xml +++ b/chapter03/introduction.xml @@ -7,12 +7,48 @@ <title>Introduction</title> <?dbhtml filename="introduction.html"?> -<para>Create a dir for the sources:</para> +<para>This chapter includes a list of packages that need to be +downloaded for building a basic Linux system. The listed version numbers +correspond to versions of the software that are known to work, and +this book is based on their use. We highly recommend not using newer +versions because the build commands for one version may not work with +a newer version. The newest package versions may also have problems +that work-arounds have not been developed for yet.</para> + +<para>All the URLs, when possible, refer to the package's information +page at <ulink url="http://www.freshmeat.net/"/>. The Freshmeat pages +provide easy access to official download sites, as well as project +websites, mailing lists, FAQ, changelogs, and more.</para> + +<para>Download locations may not always be accessible. If a download +location has changed since this book was published, Google (<ulink +url="http://www.google.com"/>) provides a useful search engine for +most packages. If this search is unsuccessful, try one of the +alternate means of downloading discussed at <ulink +url="&lfs-root;lfs/packages.html"/>.</para> + +<para>Downloaded packages and patches will need to be stored somewhere +that is conveniently available throughout the entire build. A working +directory is also required to unpack the sources and build them. +<filename class="directory">$LFS/sources</filename> can be used both +as the place to store the tarballs and patches and as a working +directory. By using this directory, the required elements will be +located on the LFS partition and will be available during all stages +of the building process.</para> + +<para>To create this directory, execute, as user +<emphasis>root</emphasis>, the following command before starting the +download session:</para> <screen><userinput>mkdir $LFS/sources</userinput></screen> -<para>Set the permissions of that dir:</para> +<para>Make this directory writable and sticky. <quote>Sticky</quote> +means that even if multiple users have write permission on a +directory, only the owner of a file can delete the file within a +sticky directory. The following command will enable the write and +sticky modes:</para> <screen><userinput>chmod a+wt $LFS/sources</userinput></screen> </sect1> + diff --git a/chapter03/packages.xml b/chapter03/packages.xml index da281d61d..babbb6e01 100644 --- a/chapter03/packages.xml +++ b/chapter03/packages.xml @@ -10,131 +10,136 @@ <para>Download or otherwise obtain the following packages:</para> <variablelist role="materials"> -<bridgehead renderas="sect3">Packages</bridgehead> <varlistentry> -<term>Autoconf (&autoconf-version;) - 903 KB:</term> +<term>Autoconf (&autoconf-version;) - 903 kilobytes (KB):</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/autoconf/"/></para> +<para><ulink url="&freshmeat;autoconf/"/></para> </listitem> </varlistentry> <varlistentry> -<term>Automake (&automake-version;) - 740 KB:</term> +<term>Automake (&automake-version;) - 681 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/automake/"/></para> +<para><ulink url="&freshmeat;automake/"/></para> </listitem> </varlistentry> <varlistentry> <term>Bash (&bash-version;) - 1,910 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/bash/"/></para> +<para><ulink url="&freshmeat;gnubash/"/></para> </listitem> </varlistentry> <varlistentry> <term>Binutils (&binutils-version;) - 10,666 KB:</term> <listitem> -<para><ulink url="http://www.kernel.org/pub/linux/devel/binutils/"/></para> +<para><ulink url="&freshmeat;binutils/?branch_id=12688"/></para> </listitem> </varlistentry> <varlistentry> <term>Bison (&bison-version;) - 796 KB:</term> <listitem> -<para><ulink url="ftp://alpha.gnu.org/gnu/bison/"/></para> +<para><ulink url="ftp://ftp.linuxfromscratch.org/pub/lfs/lfs-packages/conglomeration/bison/"/></para> </listitem> </varlistentry> <varlistentry> <term>Bzip2 (&bzip2-version;) - 650 KB:</term> <listitem> -<para><ulink url="ftp://sources.redhat.com/pub/bzip2/v102/"/></para> +<para><ulink url="&freshmeat;bzip2/"/></para> </listitem> </varlistentry> <varlistentry> <term>Coreutils (&coreutils-version;) - 3,860 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/coreutils/"/></para> +<para><ulink url="&freshmeat;coreutils/"/></para> </listitem> </varlistentry> <varlistentry> <term>DejaGNU (&dejagnu-version;) - 1,055 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/dejagnu/"/></para> +<para><ulink url="&freshmeat;dejagnu/"/></para> </listitem> </varlistentry> <varlistentry> <term>Diffutils (&diffutils-version;) - 762 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/diffutils/"/></para> +<para><ulink url="&freshmeat;diffutils/"/></para> </listitem> </varlistentry> <varlistentry> -<term>E2fsprogs (&e2fsprogs-version;) - 3,188 KB:</term> +<term>E2fsprogs (&e2fsprogs-version;) - 3,003 KB:</term> <listitem> -<para><ulink url="http://prdownloads.sourceforge.net/e2fsprogs/"/></para> +<para><ulink url="&freshmeat;e2fsprogs/"/></para> </listitem> </varlistentry> <varlistentry> -<term>Expect (&expect-version;) - 513 KB:</term> +<term>Expect (&expect-version;) - 510 KB:</term> <listitem> -<para><ulink url="http://expect.nist.gov/src/"/></para> +<para><ulink url="&freshmeat;expect/"/></para> </listitem> </varlistentry> <varlistentry> -<term>File (&file-version;) - 411 KB:</term> +<term>File (&file-version;) - 356 KB:</term> <listitem> -<para><ulink url="ftp://ftp.gw.com/mirrors/pub/unix/file/"/></para> +<para><ulink url="&freshmeat;file/"/></para> +<note><para>File (&file-version;) may no longer be available at the +listed location. The site administrators of the master download +location occasionally remove older versions when new ones are +released. An alternate download location that may have the correct +version available is <ulink +url="ftp://ftp.linuxfromscratch.org/pub/lfs/"/>.</para></note> </listitem> </varlistentry> <varlistentry> -<term>Findutils (&findutils-version;) - 914 KB:</term> +<term>Findutils (&findutils-version;) - 760 KB:</term> <listitem> -<para><ulink url="ftp://alpha.gnu.org/gnu/findutils/"/></para> +<para><ulink url="&freshmeat;findutils/"/></para> </listitem> </varlistentry> <varlistentry> <term>Flex (&flex-version;) - 372 KB:</term> <listitem> -<para><ulink url="http://sourceforge.net/projects/lex/"/></para> +<para><ulink url="&freshmeat;flex/"/></para> </listitem> </varlistentry> <varlistentry> -<term>Gawk (&gawk-version;) - 1,596 KB:</term> +<term>Gawk (&gawk-version;) - 1,692 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/gawk/"/></para> +<para><ulink url="&freshmeat;gnuawk/"/></para> </listitem> </varlistentry> <varlistentry> -<term>GCC (&gcc-version;) - ~27,000KB:</term> +<term>GCC (&gcc-version;) - 27,000 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/gcc/gcc-&gcc-version;/"/></para> +<para><ulink url="&freshmeat;gcc/"/></para> </listitem> </varlistentry> <varlistentry> <term>Gettext (&gettext-version;) - 6,397 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/gettext/"/></para> +<para><ulink url="&freshmeat;gettext/"/></para> </listitem> </varlistentry> <varlistentry> -<term>Glibc (&glibc-version;) - 12,904 KB: </term> +<term>Glibc (&glibc-version;) - 13,101 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/glibc/"/></para> +<para><ulink url="ftp://sources.redhat.com/pub/glibc/snapshots/"/></para> </listitem> </varlistentry> @@ -148,19 +153,19 @@ <varlistentry> <term>Grep (&grep-version;) - 545 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/grep/"/></para> +<para><ulink url="&freshmeat;grep/"/></para> </listitem> </varlistentry> <varlistentry> <term>Groff (&groff-version;) - 2,360 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/groff/"/></para> +<para><ulink url="&freshmeat;groff/"/></para> </listitem> </varlistentry> <varlistentry> -<term>Grub (&grub-version;) - 963 KB:</term> +<term>Grub (&grub-version;) - 902 KB:</term> <listitem> <para><ulink url="ftp://alpha.gnu.org/pub/gnu/grub/"/></para> </listitem> @@ -183,19 +188,19 @@ <varlistentry> <term>Iana-Etc (&iana-etc-version;) - 161 KB:</term> <listitem> -<para><ulink url="http://www.sethwklein.net/projects/iana-etc/"/></para> +<para><ulink url="&freshmeat;iana-etc/"/></para> </listitem> </varlistentry> <varlistentry> <term>Inetutils (&inetutils-version;) - 1,019 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/inetutils/"/></para> +<para><ulink url="&freshmeat;inetutils/"/></para> </listitem> </varlistentry> <varlistentry> -<term>IPRoute2 (&iproute2-version;) - 230 KB:</term> +<term>IPRoute2 (&iproute2-version;) - 264 KB:</term> <listitem> <para><ulink url="http://developer.osdl.org/dev/iproute2/download/"/></para> </listitem> @@ -204,84 +209,84 @@ <varlistentry> <term>Kbd (&kbd-version;) - 617 KB:</term> <listitem> -<para><ulink url="http://ftp.kernel.org/pub/linux/utils/kbd/"/></para> +<para><ulink url="&freshmeat;kbd/"/></para> </listitem> </varlistentry> <varlistentry> <term>Less (&less-version;) - 259 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/less/"/></para> +<para><ulink url="&freshmeat;less/"/></para> </listitem> </varlistentry> <varlistentry> -<term>LFS-Bootscripts (&lfs-bootscripts-version;) - 14 KB:</term> +<term>LFS-Bootscripts (&lfs-bootscripts-version;) - 16 KB:</term> <listitem> <para><ulink url="http://downloads.linuxfromscratch.org/"/></para> </listitem> </varlistentry> -<varlistentry> -<term>Libol (&libol-version;) - 337 KB:</term> +<varlistentry> +<term>Libol (&libol-version;) - 336 KB:</term> <listitem> -<para><ulink url="http://www.balabit.com/downloads/syslog-ng/libol/0.3/"/></para> +<para><ulink url="http://www.balabit.com/downloads/syslog-ng/libol/0.3"/></para> </listitem> </varlistentry> <varlistentry> -<term>Libtool (&libtool-version;) - 2,668 KB:</term> +<term>Libtool (&libtool-version;) - 2,602 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/libtool/"/></para> +<para><ulink url="&freshmeat;libtool/"/></para> </listitem> </varlistentry> <varlistentry> -<term>Linux (&linux-version;) - 30,051 KB:</term> +<term>Linux (&linux-version;) - 34,793 KB:</term> <listitem> -<para><ulink url="http://www.kernel.org/pub/linux/kernel/v2.6"/></para> +<para><ulink url="&freshmeat;linux/?branch_id=46339"/></para> </listitem> </varlistentry> <varlistentry> -<term>Linux-Libc-Headers (&linux-libc-headers-version;) - 2,460 KB:</term> +<term>Linux-Libc-Headers (&linux-libc-headers-version;) - 2,602 KB:</term> <listitem> <para><ulink url="http://ep09.pld-linux.org/~mmazur/linux-libc-headers/"/></para> </listitem> </varlistentry> <varlistentry> -<term>M4 (&m4-version;) - 310 KB:</term> +<term>M4 (&m4-version;) - 337 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/m4/"/></para> +<para><ulink url="&freshmeat;gnum4/"/></para> </listitem> </varlistentry> <varlistentry> <term>Make (&make-version;) - 899 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/make/"/></para> +<para><ulink url="&freshmeat;gnumake/"/></para> </listitem> </varlistentry> <varlistentry> -<term>Man (&man-version;) - 228 KB:</term> +<term>Man (&man-version;) - 223 KB:</term> <listitem> -<para><ulink url="ftp://ftp.win.tue.nl/pub/linux-local/utils/man/"/></para> +<para><ulink url="&freshmeat;man/"/></para> </listitem> </varlistentry> <varlistentry> -<term>Man-pages (&man-pages-version;) - 1,629 KB:</term> +<term>Man-pages (&man-pages-version;) - 1,586 KB:</term> <listitem> -<para><ulink url="http://ftp.kernel.org/pub/linux/docs/manpages/"/></para> +<para><ulink url="&freshmeat;man-pages/"/></para> </listitem> </varlistentry> <varlistentry> <term>Mktemp (&mktemp-version;) - 69 KB:</term> <listitem> -<para><ulink url="ftp://ftp.cs.colorado.edu:/pub/mktemp/"/></para> +<para><ulink url="&freshmeat;mktemp/"/></para> </listitem> </varlistentry> @@ -295,91 +300,91 @@ <varlistentry> <term>Ncurses (&ncurses-version;) - 2,019 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/ncurses/"/></para> +<para><ulink url="&freshmeat;ncurses/"/></para> </listitem> </varlistentry> <varlistentry> <term>Patch (&patch-version;) - 182 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/patch/"/></para> +<para><ulink url="&freshmeat;patch/"/></para> </listitem> </varlistentry> <varlistentry> -<term>Perl (&perl-version;) - 9,466 KB:</term> +<term>Perl (&perl-version;) - 9,373 KB:</term> <listitem> -<para><ulink url="http://www.cpan.org/src/"/></para> +<para><ulink url="&freshmeat;perl/"/></para> </listitem> </varlistentry> <varlistentry> <term>Procps (&procps-version;) - 271 KB:</term> <listitem> -<para><ulink url="http://procps.sourceforge.net/"/></para> +<para><ulink url="&freshmeat;procps/"/></para> </listitem> </varlistentry> <varlistentry> <term>Psmisc (&psmisc-version;) - 375 KB:</term> <listitem> -<para><ulink url="http://prdownloads.sourceforge.net/psmisc/"/></para> +<para><ulink url="&freshmeat;psmisc/"/></para> </listitem> </varlistentry> <varlistentry> <term>Readline (&readline-version;) - 940 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/readline/"/></para> +<para><ulink url="&freshmeat;gnureadline/"/></para> </listitem> </varlistentry> <varlistentry> <term>Sed (&sed-version;) - 776 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/sed/"/></para> +<para><ulink url="&freshmeat;sed/"/></para> </listitem> </varlistentry> <varlistentry> <term>Shadow (&shadow-version;) - 996 KB:</term> <listitem> -<para><ulink url="ftp://ftp.pld.org.pl/software/shadow/"/></para> +<para><ulink url="&freshmeat;shadow/"/></para> </listitem> </varlistentry> <varlistentry> -<term>Syslog-ng (&syslog-ng-version;) - 369 KB:</term> +<term>Syslog-ng (&syslog-ng-version;) - 388 KB:</term> <listitem> <para><ulink url="http://www.balabit.com/downloads/syslog-ng/1.6/src/"/></para> </listitem> </varlistentry> <varlistentry> -<term>Sysvinit (&sysvinit-version;) - 97 KB:</term> +<term>Sysvinit (&sysvinit-version;) - 91 KB:</term> <listitem> -<para><ulink url="ftp://ftp.cistron.nl/pub/people/miquels/sysvinit/"/></para> +<para><ulink url="&freshmeat;sysvinit/"/></para> </listitem> </varlistentry> <varlistentry> <term>Tar (&tar-version;) - 1,025 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/tar/"/></para> +<para><ulink url="&freshmeat;tar/"/></para> </listitem> </varlistentry> <varlistentry> -<term>Tcl (&tcl-version;) - 3,414 KB:</term> +<term>Tcl (&tcl-version;) - 3,363 KB:</term> <listitem> -<para><ulink url="http://prdownloads.sourceforge.net/tcl/"/></para> +<para><ulink url="&freshmeat;tcltk/"/></para> </listitem> </varlistentry> <varlistentry> <term>Texinfo (&texinfo-version;) - 1,385 KB:</term> <listitem> -<para><ulink url="http://ftp.gnu.org/gnu/texinfo/"/></para> +<para><ulink url="&freshmeat;texinfo/"/></para> </listitem> </varlistentry> @@ -405,37 +410,36 @@ </varlistentry> <varlistentry> -<term>Util-linux (&util-linux-version;) - 1,339:</term> +<term>Util-linux (&util-linux-version;) - 1,339 KB:</term> <listitem> -<para><ulink url="http://www.kernel.org/pub/linux/utils/util-linux/"/></para> +<para><ulink url="&freshmeat;util-linux/"/></para> </listitem> </varlistentry> <varlistentry> <term>Vim (&vim-version;) - 3,612 KB:</term> <listitem> -<para><ulink url="ftp://ftp.vim.org/pub/vim/unix/"/></para> +<para><ulink url="&freshmeat;vim/"/></para> </listitem> </varlistentry> <varlistentry> <term>Vim (&vim-version;) language files (optional) - 1,033 KB:</term> <listitem> -<para><ulink url="ftp://ftp.vim.org/pub/vim/unix/"/></para> +<para><ulink url="&freshmeat;vim/"/></para> </listitem> </varlistentry> <varlistentry> <term>Zlib (&zlib-version;) - 277 KB:</term> <listitem> -<para><ulink url="http://www.zlib.net/"/></para> +<para><ulink url="&freshmeat;zlib/"/></para> </listitem> </varlistentry> </variablelist> -<!-- <para>Total size of these packages: 135 MB</para> ---> </sect1> + diff --git a/chapter03/patches.xml b/chapter03/patches.xml index 28a01a6fc..c7d3efb8f 100644 --- a/chapter03/patches.xml +++ b/chapter03/patches.xml @@ -7,17 +7,23 @@ <title>Needed Patches</title> <?dbhtml filename="patches.html"?> +<para>In addition to the packages, several patches are also required. +These patches correct any mistakes in the packages that should be +fixed by the maintainer. The patches also make small modifications to +make the packages easier to work with. The following patches will be +needed to build an LFS system:</para> + <variablelist role="materials"> <varlistentry> -<term>Bash Various Fixes - 23 KB:</term> +<term>Bash Various Fixes - 21 KB:</term> <listitem> -<para><ulink url="&patches-root;bash-&bash-version;-fixes-3.patch"/></para> +<para><ulink url="&patches-root;bash-&bash-version;-fixes-1.patch"/></para> </listitem> </varlistentry> <varlistentry> -<term>Bash Avoid Wcontinued Patch - 1KB:</term> +<term>Bash Avoid Wcontinued Patch - 1 KB:</term> <listitem> <para><ulink url="&patches-root;bash-&bash-version;-avoid_WCONTINUED-1.patch"/></para> </listitem> @@ -26,7 +32,8 @@ <varlistentry> <term>Coreutils Suppress Uptime, Kill, Su Patch - 16 KB:</term> <listitem> -<para><ulink url="&patches-root;coreutils-&coreutils-version;-suppress_uptime_kill_su-1.patch"/></para> +<para condition="html"><ulink url="&patches-root;coreutils-&coreutils-version;-suppress_uptime_kill_su-1.patch"/></para> +<para condition="pdf"><ulink url="&patches-root;coreutils-&coreutils-version;-suppress_uptime_ kill_su-1.patch"/></para> </listitem> </varlistentry> @@ -52,7 +59,7 @@ </varlistentry> <varlistentry> -<term> GCC Linkonce Patch - 12KB:</term> +<term> GCC Linkonce Patch - 12 KB:</term> <listitem> <para><ulink url="&patches-root;gcc-&gcc-version;-linkonce-1.patch"/></para> </listitem> @@ -75,21 +82,24 @@ <varlistentry> <term>Inetutils Kernel Headers Patch - 1 KB:</term> <listitem> -<para><ulink url="&patches-root;inetutils-&inetutils-version;-kernel_headers-1.patch"/></para> +<para condition="html"><ulink url="&patches-root;inetutils-&inetutils-version;-kernel_headers-1.patch"/></para> +<para condition="pdf"><ulink url="&patches-root;inetutils-&inetutils-version;-kernel_headers- 1.patch"/></para> </listitem> </varlistentry> <varlistentry> <term>Inetutils No-Server-Man-Pages Patch - 4 KB:</term> <listitem> -<para><ulink url="&patches-root;inetutils-&inetutils-version;-no_server_man_pages-1.patch"/></para> +<para condition="html"><ulink url="&patches-root;inetutils-&inetutils-version;-no_server_man_pages-1.patch"/></para> +<para condition="pdf"><ulink url="&patches-root;inetutils-&inetutils-version;-no_server_man_ pages-1.patch"/></para> </listitem> </varlistentry> <varlistentry> <term>IPRoute2 Disable DB Patch - 1 KB:</term> <listitem> -<para><ulink url="&patches-root;iproute2-&iproute2-patch-version;-remove_db-1.patch"/></para> +<para condition="html"><ulink url="&patches-root;iproute2-&iproute2-patch-version;-remove_db-1.patch"/></para> +<para condition="pdf"><ulink url="&patches-root;iproute2-&iproute2-patch-version;-remove_ db-1.patch"/></para> </listitem> </varlistentry> @@ -122,9 +132,9 @@ </varlistentry> <varlistentry> -<term>Readline Various Fixes - 7 KB:</term> +<term>Readline Display Wrap Patch - 1 KB:</term> <listitem> -<para><ulink url="&patches-root;readline-&readline-version;-fixes-1.patch" /></para> +<para><ulink url="&patches-root;readline-&readline-version;-fixes-1.patch"/></para> </listitem> </varlistentry> @@ -142,4 +152,12 @@ </variablelist> +<para>In addition to the above required patches, there exist a number of +optional patches created by the LFS community. These optional patches +solve minor problems or enable functionality that is not enabled by +default. Feel free to peruse the patches database located at +<ulink url="&lfs-root;patches/"/> and acquire any additional +patches to suit the system needs.</para> + </sect1> + |