Added a section to each package's dependencies

in the Appendix to list external (non-LFS) dependencies for
 LFS packages.


git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@9115 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
This commit is contained in:
Bruce Dubbs 2009-11-22 22:11:22 +00:00
parent 67e01e5dce
commit 0c2106b747
3 changed files with 473 additions and 20 deletions

View File

@ -11,24 +11,31 @@
<title>Dependencies</title>
<para>Every package built in LFS relies on one or more other packages
in order to build and install properly. Some packages even participate
in circular dependencies, that is, the first package depends on the second
which in turn depends on the first. Because of these dependencies, the
order in which packages are built in LFS is very important. The purpose
of this page is to document the dependencies of each package built in LFS.</para>
<para>Every package built in LFS relies on one or more other packages in
order to build and install properly. Some packages even participate in
circular dependencies, that is, the first package depends on the second which
in turn depends on the first. Because of these dependencies, the order in
which packages are built in LFS is very important. The purpose of this page
is to document the dependencies of each package built in LFS.</para>
<para>For each package we build, we have listed three types of dependencies.
The first lists what other packages need to be available in order to compile
and install the package in question. The second lists what packages, in
addition to those on the first list, need to be available in order to run the
testsuites. The last list of dependencies are packages that require this
package to be built and installed in its final location before they are built
and installed. In most cases, this is because these packages will hardcode
paths to binaries within their scripts. If not built in a certain order,
this could result in paths of /tools/bin/[binary] being placed inside
scripts installed to the final system. This is obviously not desirable.
</para>
<para>For each package we build, we have listed three, and sometimes four,
types of dependencies. The first lists what other packages need to be
available in order to compile and install the package in question. The second
lists what packages, in addition to those on the first list, need to be
available in order to run the testsuites. The third list of dependencies are
packages that require this package to be built and installed in its final
location before they are built and installed. In most cases, this is because
these packages will hardcode paths to binaries within their scripts. If not
built in a certain order, this could result in paths of /tools/bin/[binary]
being placed inside scripts installed to the final system. This is obviously
not desirable.</para>
<para>The last list of dependencies are optional packages that are not
addressed in LFS, but could be useful to the user. These packages may have
additional mandatory or optional dependencies of their own. For these
dependencies, the recommeded practice is to install them after completion of
the LFS book and then go back an rebuild the LFS package. In several cases,
reinstallation is addressed in BLFS.</para>
<!-- Begin Autoconf dependency info -->
<bridgehead renderas="sect2" id="autoconf-dep">Autoconf</bridgehead>
@ -57,6 +64,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>Emacs</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Automake dependency info -->
<bridgehead renderas="sect2" id="automake-dep">Automake</bridgehead>
@ -74,8 +89,7 @@
<seglistitem>
<seg>Binutils, Bison, Bzip2, DejaGNU, Diffutils, Expect, Findutils,
Flex, GCC, Gettext, Gzip, Libtool, and Tar. Can also use several
other packages that are not installed in LFS.</seg>
Flex, GCC, Gettext, Gzip, Libtool, and Tar.</seg>
</seglistitem>
</segmentedlist>
@ -87,6 +101,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Bash dependency info -->
<bridgehead renderas="sect2" id="bash-dep">Bash</bridgehead>
@ -115,6 +137,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>Xorg</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Binutils dependency info -->
<bridgehead renderas="sect2" id="binutils-dep">Binutils</bridgehead>
@ -143,6 +173,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Bison dependency info -->
<bridgehead renderas="sect2" id="bison-dep">Bison</bridgehead>
@ -171,6 +209,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>Doxygen (testsuite)</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Bzip2 dependency info -->
<bridgehead renderas="sect2" id="bzip2-dep">Bzip2</bridgehead>
@ -199,6 +245,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Coreutils dependency info -->
<bridgehead renderas="sect2" id="coreutils-dep">Coreutils</bridgehead>
@ -227,6 +281,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>Perl Expect and IO:Tty modules (for testsuite)</seg>
</seglistitem>
</segmentedlist>
<!-- Begin DejaGNU dependency info -->
<bridgehead renderas="sect2" id="dejagnu-dep">DejaGNU</bridgehead>
@ -254,6 +316,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Diffutils dependency info -->
<bridgehead renderas="sect2" id="diffutils-dep">Diffutils</bridgehead>
@ -282,6 +352,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Expect dependency info -->
<bridgehead renderas="sect2" id="expect-dep">Expect</bridgehead>
@ -310,6 +388,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin E2fsprogs dependency info -->
<bridgehead renderas="sect2" id="e2fsprogs-dep">E2fsprogs</bridgehead>
@ -338,6 +424,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin File dependency info -->
<bridgehead renderas="sect2" id="file-dep">File</bridgehead>
@ -366,6 +460,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Findutils dependency info -->
<bridgehead renderas="sect2" id="findutils-dep">Findutils</bridgehead>
@ -394,6 +496,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Flex dependency info -->
<bridgehead renderas="sect2" id="flex-dep">Flex</bridgehead>
@ -422,6 +532,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Gawk dependency info -->
<bridgehead renderas="sect2" id="gawk-dep">Gawk</bridgehead>
@ -450,6 +568,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Gcc dependency info -->
<bridgehead renderas="sect2" id="gcc-dep">Gcc</bridgehead>
@ -479,6 +605,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>GNAT</seg>
</seglistitem>
</segmentedlist>
<!-- Begin GDBM dependency info -->
<bridgehead renderas="sect2" id="gdbm">GDBM</bridgehead>
@ -506,6 +640,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Gettext dependency info -->
<bridgehead renderas="sect2" id="gettext-dep">Gettext</bridgehead>
@ -534,6 +676,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Glibc dependency info -->
<bridgehead renderas="sect2" id="glibc-dep">Glibc</bridgehead>
@ -562,6 +712,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin GMP dependency info -->
<bridgehead renderas="sect2" id="gmp-dep">GMP</bridgehead>
@ -590,6 +748,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Grep dependency info -->
<bridgehead renderas="sect2" id="grep-dep">Grep</bridgehead>
@ -618,6 +784,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>Pcre, Xorg, and CUPS</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Groff dependency info -->
<bridgehead renderas="sect2" id="groff-dep">Groff</bridgehead>
@ -646,6 +820,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>GPL Ghostscript</seg>
</seglistitem>
</segmentedlist>
<!-- Begin GRUB dependency info -->
<bridgehead renderas="sect2" id="grub-dep">GRUB</bridgehead>
@ -674,6 +856,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Gzip dependency info -->
<bridgehead renderas="sect2" id="gzip-dep">Gzip</bridgehead>
@ -702,6 +892,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Iana-Etc dependency info -->
<bridgehead renderas="sect2" id="iana-etc-dep">Iana-Etc</bridgehead>
@ -729,6 +927,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Inetutils dependency info -->
<bridgehead renderas="sect2" id="inetutils-dep">Inetutils</bridgehead>
@ -737,7 +943,7 @@
<seglistitem>
<seg>Bash, Binutils, Coreutils, GCC, Glibc, Grep, Make, Ncurses,
Patch, Sed, and Texinfo</seg>
Patch, Sed, Texinfo, and Zlib</seg>
</seglistitem>
</segmentedlist>
@ -757,6 +963,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin IProute2 dependency info -->
<bridgehead renderas="sect2" id="iproute2-dep">IProute2</bridgehead>
@ -785,6 +999,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Kbd dependency info -->
<bridgehead renderas="sect2" id="kbd-dep">Kbd</bridgehead>
@ -813,6 +1035,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Less dependency info -->
<bridgehead renderas="sect2" id="less-dep">Less</bridgehead>
@ -841,6 +1071,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>Pcre</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Libtool dependency info -->
<bridgehead renderas="sect2" id="libtool-dep">Libtool</bridgehead>
@ -869,6 +1107,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Linux Kernel dependency info -->
<bridgehead renderas="sect2" id="linux-dep">Linux Kernel</bridgehead>
@ -897,6 +1143,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin M4 dependency info -->
<bridgehead renderas="sect2" id="m4-dep">M4</bridgehead>
@ -925,6 +1179,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Make dependency info -->
<bridgehead renderas="sect2" id="make-dep">Make</bridgehead>
@ -953,6 +1215,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Man-DB dependency info -->
<bridgehead renderas="sect2" id="man-db-dep">Man-DB</bridgehead>
@ -981,6 +1251,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Man-Pages dependency info -->
<bridgehead renderas="sect2" id="man-pages-dep">Man-Pages</bridgehead>
@ -1008,6 +1286,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Module-Init-Tools dependency info -->
<bridgehead renderas="sect2" id="module-init-tools-dep">Module-Init-Tools</bridgehead>
@ -1036,6 +1322,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin MPFR dependency info -->
<bridgehead renderas="sect2" id="mpfr-dep">MPFR</bridgehead>
@ -1064,6 +1358,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Ncurses dependency info -->
<bridgehead renderas="sect2" id="ncurses-dep">Ncurses</bridgehead>
@ -1093,6 +1395,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Patch dependency info -->
<bridgehead renderas="sect2" id="patch-dep">Patch</bridgehead>
@ -1120,6 +1430,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Perl dependency info -->
<bridgehead renderas="sect2" id="perl-dep">Perl</bridgehead>
@ -1148,6 +1466,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Pkg-config dependency info -->
<bridgehead renderas="sect2" id="pkg-config-dep">Pkg-config</bridgehead>
@ -1176,6 +1502,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Procps dependency info -->
<bridgehead renderas="sect2" id="procps-dep">Procps</bridgehead>
@ -1203,6 +1537,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Psmisc dependency info -->
<bridgehead renderas="sect2" id="psmisc-dep">Psmisc</bridgehead>
@ -1231,6 +1573,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Readline dependency info -->
<bridgehead renderas="sect2" id="readline-dep">Readline</bridgehead>
@ -1259,6 +1609,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Sed dependency info -->
<bridgehead renderas="sect2" id="sed-dep">Sed</bridgehead>
@ -1287,6 +1645,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>Cracklib</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Shadow dependency info -->
<bridgehead renderas="sect2" id="shadow-dep">Shadow</bridgehead>
@ -1315,6 +1681,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Sysklogd dependency info -->
<bridgehead renderas="sect2" id="sysklogd-dep">Sysklogd</bridgehead>
@ -1342,6 +1716,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Sysvinit dependency info -->
<bridgehead renderas="sect2" id="sysvinit-dep">Sysvinit</bridgehead>
@ -1369,6 +1751,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Tar dependency info -->
<bridgehead renderas="sect2" id="tar-dep">Tar</bridgehead>
@ -1397,6 +1787,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Tcl dependency info -->
<bridgehead renderas="sect2" id="tcl-dep">Tcl</bridgehead>
@ -1425,6 +1823,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Texinfo dependency info -->
<bridgehead renderas="sect2" id="texinfo-dep">Texinfo</bridgehead>
@ -1453,6 +1859,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Udev dependency info -->
<bridgehead renderas="sect2" id="udev-dep">Udev</bridgehead>
@ -1481,6 +1895,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Util-linux-ng dependency info -->
<bridgehead renderas="sect2" id="util-linux-dep">Util-linux-ng</bridgehead>
@ -1509,6 +1931,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Vim dependency info -->
<bridgehead renderas="sect2" id="vim-dep">Vim</bridgehead>
@ -1537,6 +1967,14 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>Xorg, GTK+2, LessTif, Python, Tcl, Ruby, and GPM</seg>
</seglistitem>
</segmentedlist>
<!-- Begin Zlib dependency info -->
<bridgehead renderas="sect2" id="zlib-dep">Zlib</bridgehead>
@ -1564,4 +2002,12 @@
</seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>&external;</segtitle>
<seglistitem>
<seg>None</seg>
</seglistitem>
</segmentedlist>
</appendix>

View File

@ -45,6 +45,12 @@
print a comment that makeinfo is used to identify
the Texinfo package version.</para>
</listitem>
<listitem>
<para>[bdubbs] Added a section to each package's dependencies
in the Appendix to list external (non-LFS) dependencies for
LFS packages. Fixes
<ulink url="&lfs-ticket-root;1682">#1682</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>

View File

@ -22,6 +22,7 @@
<!ENTITY dependencies "Installation depends on">
<!ENTITY testsuites "Test suite depends on">
<!ENTITY before "Must be installed before">
<!ENTITY external "Optional dependencies">
<!ENTITY gnu "http://ftp.gnu.org/gnu/">
<!ENTITY gnu-software "http://www.gnu.org/software/">