aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorManuel Canales Esparcia <manuel@linuxfromscratch.org>2006-01-11 12:41:26 +0000
committerManuel Canales Esparcia <manuel@linuxfromscratch.org>2006-01-11 12:41:26 +0000
commit3271442dbf07bcad2cfffd3a9fdddd4362117bc3 (patch)
tree9e8a03f3e20320c1fb168a44d360573e8b117cb3
parentd07a8f848330eeb7df8c7abe6d5078f697c20cc4 (diff)
Ported last updates from trunk except the Grep move on (already handled in this branch) and the Bison sed (conflicts with theBison installation in chapter05 and the move on of Flex).
git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/alphabetical/BOOK@7266 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
-rw-r--r--chapter01/administrativa.xml83
-rw-r--r--chapter01/askforhelp.xml188
-rw-r--r--chapter01/changelog.xml15
-rw-r--r--chapter01/chapter01.xml21
-rw-r--r--chapter01/how.xml147
-rw-r--r--chapter01/livecd.xml146
-rw-r--r--chapter01/resources.xml91
-rw-r--r--chapter03/packages.xml14
-rw-r--r--chapter06/db.xml40
-rw-r--r--chapter06/gcc.xml8
-rw-r--r--chapter06/iproute2.xml4
-rw-r--r--chapter06/man-db.xml4
-rw-r--r--chapter06/man.xml0
-rw-r--r--chapter06/perl.xml14
-rw-r--r--chapter07/hosts.xml2
-rw-r--r--chapter09/whatnow.xml2
16 files changed, 433 insertions, 346 deletions
diff --git a/chapter01/administrativa.xml b/chapter01/administrativa.xml
deleted file mode 100644
index 52aea6168..000000000
--- a/chapter01/administrativa.xml
+++ /dev/null
@@ -1,83 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
- <!ENTITY % general-entities SYSTEM "../general.ent">
- %general-entities;
-]>
-<sect1 id="ch-scatter-administrativa">
-<title>Resources</title>
-<?dbhtml filename="resources.html"?>
-
-
-<sect2 id="ch-scatter-faq">
-<title>FAQ</title>
-
-<para>If during the building of the LFS system you encounter any
-errors, have any questions, or think there is a typo in the book,
-please start by consulting the Frequently Asked Questions (FAQ)
-that is located at <ulink url="&faq-root;"/>.</para>
-</sect2>
-
-<sect2 id="ch-scatter-maillists" xreflabel="Chapter 1 - Mailing Lists">
-<title>Mailing Lists</title>
-
-<para>The <uri>linuxfromscratch.org</uri> server hosts a number of mailing lists
-used for the development of the LFS project. These lists include the main
-development and support lists, among others. If the FAQ does not solve the
-problem you are having, the next step would be to search the mailing lists at
-<ulink url="&lfs-root;search.html"/>.</para>
-
-<para>For information on the different lists, how to subscribe, archive
-locations, and additional information, visit
-<ulink url="&lfs-root;mail.html"/>.</para>
-</sect2>
-
-<!-- Remove until such time as we have our own News Server, JH 20060105
-<sect2 id="ch-scatter-newsserver">
-<title>News Server</title>
-
-<para>The mailing lists hosted at <uri>linuxfromscratch.org</uri> are
-also accessible via the Network News Transfer Protocol (NNTP) server.
-All messages posted to a mailing list are copied to the corresponding
-newsgroup, and vice versa.</para>
-
-<para>The news server is located at
-<uri>news.linuxfromscratch.org</uri>.</para>
-</sect2> -->
-
-<sect2 id="ch-scatter-irc">
-<title>IRC</title>
-
-<para>Several members of the LFS community offer assistance on our
-community Internet Relay Chat (IRC) network. Before using this
-support, please make sure that your question is not already answered in the LFS
-FAQ or the mailing list archives. You can find the IRC network at
-<uri>irc.linuxfromscratch.org</uri>.
-The support channel is named #LFS-support.</para>
-</sect2>
-
-<sect2 id="ch-scatter-references">
-<title>References</title>
-
-<para>For additional information on the packages, useful tips are
-available in the LFS Package Reference page located at <ulink
-url="http://www.linuxfromscratch.org/~matthew/LFS-references.html"/>.</para>
-</sect2>
-
-
-<sect2 id="ch-scatter-mirrors" xreflabel="Chapter 1 - Mirror sites">
-<title>Mirror Sites</title>
-
-<para>The LFS project has a number of world-wide mirrors to make accessing the
-website and downloading the required packages more convenient. Please visit the
-LFS website at <ulink url="&lfs-root;mirrors.html"/> for a list of current
-mirrors.</para> </sect2>
-
-<sect2 id="ch-scatter-contactinfo">
-<title>Contact Information</title>
-
-<para>Please direct all your questions and comments to one of the LFS mailing
-lists (see above).</para>
-</sect2>
-
-</sect1>
-
diff --git a/chapter01/askforhelp.xml b/chapter01/askforhelp.xml
index fa6ddccaa..f5f550318 100644
--- a/chapter01/askforhelp.xml
+++ b/chapter01/askforhelp.xml
@@ -1,87 +1,101 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
+<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
+ "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
-<sect1 id="prepare-askforhelp">
-<title>Help</title>
-<?dbhtml filename="askforhelp.html"?>
-
-<para>If an issue or a question is encountered while working
-through this book, check the FAQ page at <ulink url="&faq-root;#generalfaq"/>.
-Questions are often already answered there. If your question is
-not answered on this page, try to find the source of the problem. The
-following hint will give you some guidance for troubleshooting: <ulink
-url="&hints-root;errors.txt"/>.</para>
-
-<para>If you cannot find your problem listed in the FAQ, search the mailing
-lists at <ulink url="&lfs-root;search.html"/>.</para>
-
-<para>We also have a wonderful LFS community that is willing to offer assistance
-through the mailing lists and IRC (see the <xref
-linkend="ch-scatter-administrativa"/> section of this book). However, we get
-several support questions everyday and many of them can be easily answered by
-going to the FAQ and by searching the mailing lists first. So for us to offer
-the best assistance possible, you need to do some research on your own first.
-That allows us to focus on the more unusual support needs. If your searches do
-not produce a solution, please include all relevant information (mentioned
-below) in your request for help.</para>
-
-<sect2>
-<title>Things to Mention</title>
-
-<para>Apart from a brief explanation of the problem being experienced,
-the essential things to include in any request for help are:</para>
-
-<itemizedlist>
-<listitem><para>The version of the book being used (in this case
-&version;)</para></listitem>
-<listitem><para>The host distribution and version being used to
-create LFS</para></listitem>
-<listitem><para>The package or section the problem was encountered in</para></listitem>
-<listitem><para>The exact error message or symptom being received</para></listitem>
-<listitem><para>Note whether you have deviated from the book at all </para></listitem>
-</itemizedlist>
-
-<note><para>Deviating from this book does <emphasis>not</emphasis>
-mean that we will not help you. After all, LFS is about personal
-preference. Being upfront about any changes to the established
-procedure helps us evaluate and determine possible causes of your
-problem.</para></note>
-</sect2>
-
-<sect2>
-<title>Configure Script Problems</title>
-
-<para>If something goes wrong while running the <command>configure</command>
-script, review the <filename>config.log</filename> file. This file may
-contain errors encountered during <command>configure</command> which were not
-printed to the screen. Include the <emphasis>relevant</emphasis> lines if you
-need to ask for help.</para>
-</sect2>
-
-<sect2>
-<title>Compilation Problems</title>
-
-<para>Both the screen output and the contents of various files are
-useful in determining the cause of compilation problems. The screen output
-from the <command>configure</command> script and the
-<command>make</command> run can be helpful. It
-is not necessary to include the entire output, but do include enough
-of the relevant information. Below is an example of the type of
-information to include from the screen output from <command>make</command>:</para>
+
+<sect1 id="ch-intro-askforhelp">
+ <?dbhtml filename="askforhelp.html"?>
+
+ <title>Help</title>
+
+ <para>If an issue or a question is encountered while working through
+ this book, check the FAQ page at <ulink url="&faq-root;#generalfaq"/>.
+ Questions are often already answered there. If your question is not
+ answered on this page, try to find the source of the problem. The
+ following hint will give you some guidance for troubleshooting:
+ <ulink url="&hints-root;errors.txt"/>.</para>
+
+ <para>If you cannot find your problem listed in the FAQ, search the mailing
+ lists at <ulink url="&lfs-root;search.html"/>.</para>
+
+ <para>We also have a wonderful LFS community that is willing to offer
+ assistance through the mailing lists and IRC (see the <xref
+ linkend="ch-intro-resources"/> section of this book). However,
+ we get several support questions everyday and many of them can be easily
+ answered by going to the FAQ and by searching the mailing lists first.
+ So for us to offer the best assistance possible, you need to do some
+ research on your own first. That allows us to focus on the more unusual
+ support needs. If your searches do not produce a solution, please include
+ all relevant information (mentioned below) in your request for help.</para>
+
+ <sect2>
+ <title>Things to Mention</title>
+
+ <para>Apart from a brief explanation of the problem being experienced,
+ the essential things to include in any request for help are:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>The version of the book being used (in this case &version;)</para>
+ </listitem>
+ <listitem>
+ <para>The host distribution and version being used to create LFS</para>
+ </listitem>
+ <listitem>
+ <para>The package or section the problem was encountered in</para>
+ </listitem>
+ <listitem>
+ <para>The exact error message or symptom being received</para>
+ </listitem>
+ <listitem>
+ <para>Note whether you have deviated from the book at all </para>
+ </listitem>
+ </itemizedlist>
+
+ <note>
+ <para>Deviating from this book does <emphasis>not</emphasis> mean that
+ we will not help you. After all, LFS is about personal preference.
+ Being upfront about any changes to the established procedure helps us
+ evaluate and determine possible causes of your problem.</para>
+ </note>
+
+ </sect2>
+
+ <sect2>
+ <title>Configure Script Problems</title>
+
+ <para>If something goes wrong while running the <command>configure</command>
+ script, review the <filename>config.log</filename> file. This file may
+ contain errors encountered during <command>configure</command> which were
+ not printed to the screen. Include the <emphasis>relevant</emphasis> lines
+ if you need to ask for help.</para>
+
+ </sect2>
+
+ <sect2>
+ <title>Compilation Problems</title>
+
+ <para>Both the screen output and the contents of various files are useful
+ in determining the cause of compilation problems. The screen output from
+ the <command>configure</command> script and the <command>make</command>
+ run can be helpful. It is not necessary to include the entire output, but
+ do include enough of the relevant information. Below is an example of the
+ type of information to include from the screen output from
+ <command>make</command>:</para>
<screen><computeroutput>gcc -DALIASPATH=\"/mnt/lfs/usr/share/locale:.\"
--DLOCALEDIR=\"/mnt/lfs/usr/share/locale\"
+-DLOCALEDIR=\"/mnt/lfs/usr/share/locale\"
-DLIBDIR=\"/mnt/lfs/usr/lib\"
-DINCLUDEDIR=\"/mnt/lfs/usr/include\" -DHAVE_CONFIG_H -I. -I.
-g -O2 -c getopt1.c
-gcc -g -O2 -static -o make ar.o arscan.o commands.o dir.o
-expand.o file.o function.o getopt.o implicit.o job.o main.o
-misc.o read.o remake.o rule.o signame.o variable.o vpath.o
+gcc -g -O2 -static -o make ar.o arscan.o commands.o dir.o
+expand.o file.o function.o getopt.o implicit.o job.o main.o
+misc.o read.o remake.o rule.o signame.o variable.o vpath.o
default.o remote-stub.o version.o opt1.o
-lutil job.o: In function `load_too_high':
-/lfs/tmp/make-3.79.1/job.c:1565: undefined reference
+/lfs/tmp/make-3.79.1/job.c:1565: undefined reference
to `getloadavg'
collect2: ld returned 1 exit status
make[2]: *** [make] Error 1
@@ -90,23 +104,23 @@ make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/lfs/tmp/make-3.79.1'
make: *** [all-recursive-am] Error 2</computeroutput></screen>
-<para>In this case, many people would just include the bottom
-section:</para>
+ <para>In this case, many people would just include the bottom
+ section:</para>
<screen><computeroutput>make [2]: *** [make] Error 1</computeroutput></screen>
-<para>This is not enough information to properly diagnose the problem
-because it only notes that something went wrong, not
-<emphasis>what</emphasis> went wrong. The entire section, as in the
-example above, is what should be saved because it includes the command
-that was executed and the associated error message(s).</para>
+ <para>This is not enough information to properly diagnose the problem
+ because it only notes that something went wrong, not
+ <emphasis>what</emphasis> went wrong. The entire section, as in the
+ example above, is what should be saved because it includes the command
+ that was executed and the associated error message(s).</para>
-<para>An excellent article about asking for help on the Internet is
-available online at <ulink
-url="http://catb.org/~esr/faqs/smart-questions.html"/>. Read and
-follow the hints in this document to increase the likelihood of getting
-the help you need.</para>
-</sect2>
+ <para>An excellent article about asking for help on the Internet is
+ available online at <ulink
+ url="http://catb.org/~esr/faqs/smart-questions.html"/>. Read and
+ follow the hints in this document to increase the likelihood of getting
+ the help you need.</para>
-</sect1>
+ </sect2>
+</sect1>
diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml
index b0b5ebd5d..a665d2a8b 100644
--- a/chapter01/changelog.xml
+++ b/chapter01/changelog.xml
@@ -96,7 +96,7 @@ First a summary, then a detailed log.</para>
<listitem><para>&bzip2-docs-patch;</para></listitem>
<listitem><para>&gawk-segfault-patch;</para></listitem>
<listitem><para>&gcc-specs-patch;</para></listitem>
-<listitem><para>DB-&db-version;</para></listitem>
+<listitem><para>Berkeley DB-&db-version;</para></listitem>
<listitem><para>&inetutils-gcc4_fixes-patch;</para></listitem>
<listitem><para>&kbd-gcc4_fixes-patch;</para></listitem>
<listitem><para>MAN-DB-&man-db-version;</para></listitem>
@@ -124,6 +124,19 @@ First a summary, then a detailed log.</para>
</itemizedlist>
</listitem>
+<listitem><para>January 10, 2006 [ken]: Added a sed to correct gccbug.</para>
+</listitem>
+
+<listitem><para>January 7, 2006 [ken]: Alter the Perl instructions to
+always create an /etc/hosts file. This fixes a potential difference in
+the 'hostcat' recorded in Config_heavy.pl. Thanks to Bryan Kadzban for
+explaining this.</para></listitem>
+
+<listitem><para>January 7, 2006 [ken]: Give Berkeley DB its full name,
+and remove the '-lpthread' overrides. Also add pointer to BLFS, thanks
+to Randy McMurchy.</para>
+</listitem>
+
<listitem><para>January 5, 2006 [jhuntwork]: Readjust some package order based on findings by
Dan Nicholson. Flex and bison circular dependencies, perl needs sed and groff, e2fsprogs wants gettext.</para>
</listitem>
diff --git a/chapter01/chapter01.xml b/chapter01/chapter01.xml
index 15019e65d..3906cf0aa 100644
--- a/chapter01/chapter01.xml
+++ b/chapter01/chapter01.xml
@@ -1,17 +1,20 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
+<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
+ "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
+
<chapter id="chapter-intro" xreflabel="Chapter 1">
-<?dbhtml dir="chapter01"?>
-<title>Introduction</title>
-<?dbhtml filename="chapter01.html"?>
+ <?dbhtml dir="chapter01"?>
+ <?dbhtml filename="chapter01.html"?>
+
+ <title>Introduction</title>
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="how.xml"/>
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="changelog.xml"/>
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="administrativa.xml"/>
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="askforhelp.xml"/>
-<!--<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="livecd.xml"/>-->
+ <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="how.xml"/>
+ <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="changelog.xml"/>
+ <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="resources.xml"/>
+ <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="askforhelp.xml"/>
+ <!--<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="livecd.xml"/>-->
</chapter>
diff --git a/chapter01/how.xml b/chapter01/how.xml
index 55d1447d6..6c1c3b26f 100644
--- a/chapter01/how.xml
+++ b/chapter01/how.xml
@@ -1,88 +1,89 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
+<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
+ "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
-<sect1 id="ch-scatter-how">
-<title>How to Build an LFS System</title>
-<?dbhtml filename="how.html"?>
-<para>The LFS system will be built by using a previously installed
-Linux distribution (such as Debian, Mandrake, Red Hat, or SuSE). This
-existing Linux system (the host) will be used as a starting point to
-provide necessary programs, including a compiler, linker, and shell,
-to build the new system. Select the <quote>development</quote> option
-during the distribution installation to be able to access these
-tools.</para>
+<sect1 id="ch-intro-how">
+ <?dbhtml filename="how.html"?>
-<para>As an alternative to installing an entire separate distribution onto your
-machine, you may wish to use the Linux From Scratch LiveCD. The CD works well as
-a host system, providing all the tools you need to successfully follow the
-instructions in this book. Additionally, it contains all the source packages,
-patches and a copy of this book. So once you have the CD, no network connection
-or additional downloads are necessary. For more information about the LFS LiveCD
-or to download a copy, visit <ulink url="&livecd-root;"/>.</para>
+ <title>How to Build an LFS System</title>
-<para><xref linkend="chapter-partitioning"/> of this book describes how
-to create a new Linux native partition and file system, the place
-where the new LFS system will be compiled and installed. <xref
-linkend="chapter-getting-materials"/> explains which packages and
-patches need to be downloaded to build an LFS system and how to store
-them on the new file system. <xref linkend="chapter-final-preps"/>
-discusses the setup for an appropriate working environment. Please read
-<xref linkend="chapter-final-preps"/> carefully as it explains several
-important issues the developer should be aware of before beginning to
-work through <xref linkend="chapter-temporary-tools"/> and
-beyond.</para>
+ <para>The LFS system will be built by using a previously installed
+ Linux distribution (such as Debian, Mandrake, Red Hat, or SuSE). This
+ existing Linux system (the host) will be used as a starting point to
+ provide necessary programs, including a compiler, linker, and shell,
+ to build the new system. Select the <quote>development</quote> option
+ during the distribution installation to be able to access these
+ tools.</para>
-<para><xref linkend="chapter-temporary-tools"/> explains the
-installation of a number of packages that will form the basic
-development suite (or toolchain) which is used to build the actual
-system in <xref linkend="chapter-building-system"/>. Some of these
-packages are needed to resolve circular dependencies&mdash;for example,
-to compile a compiler, you need a compiler.</para>
+ <para>As an alternative to installing an entire separate distribution
+ onto your machine, you may wish to use the Linux From Scratch LiveCD.
+ The CD works well as a host system, providing all the tools you need
+ to successfully follow the instructions in this book. Additionally,
+ it contains all the source packages, patches and a copy of this book.
+ So once you have the CD, no network connection or additional downloads
+ are necessary. For more information about the LFS LiveCD or to download
+ a copy, visit <ulink url="&livecd-root;"/>.</para>
-<para><xref linkend="chapter-temporary-tools"/> also shows the user how
-to build a first pass of the toolchain, including Binutils and GCC
-(first pass basically means these two core packages will be
-re-installed a second time). The next step is to build Glibc, the C library.
-Glibc will be compiled by the toolchain programs built in the first pass. Then,
-a second pass of the toolchain will be built. This time, the toolchain will be
-dynamically linked against the newly built Glibc. The remaining
-<xref linkend="chapter-temporary-tools"/> packages are built using this second
-pass toolchain. When this is done, the LFS installation process will no longer
-depend on the host distribution, with the exception of the running kernel.
-</para>
+ <para><xref linkend="chapter-partitioning"/> of this book describes how
+ to create a new Linux native partition and file system, the place
+ where the new LFS system will be compiled and installed. <xref
+ linkend="chapter-getting-materials"/> explains which packages and
+ patches need to be downloaded to build an LFS system and how to store
+ them on the new file system. <xref linkend="chapter-final-preps"/>
+ discusses the setup for an appropriate working environment. Please read
+ <xref linkend="chapter-final-preps"/> carefully as it explains several
+ important issues the developer should be aware of before beginning to
+ work through <xref linkend="chapter-temporary-tools"/> and beyond.</para>
-<para>This effort to isolate the new system from the host distribution may seem
-excessive, but a full technical explanation is provided in
-<xref linkend="ch-tools-toolchaintechnotes"/>.</para>
+ <para><xref linkend="chapter-temporary-tools"/> explains the
+ installation of a number of packages that will form the basic
+ development suite (or toolchain) which is used to build the actual
+ system in <xref linkend="chapter-building-system"/>. Some of these
+ packages are needed to resolve circular dependencies&mdash;for example,
+ to compile a compiler, you need a compiler.</para>
-<para>In <xref linkend="chapter-building-system"/>, the full LFS system is
-built. The <command>chroot</command> (change root) program is used to enter a virtual
-environment and start a new shell whose root directory will be set to
-the LFS partition. This is very similar to rebooting and instructing
-the kernel to mount the LFS partition as the root partition. The
-system does not actually reboot, but instead <command>chroot</command>'s because creating a
-bootable system requires additional work which is not necessary just
-yet. The major advantage is that <quote>chrooting</quote> allows the
-builder to continue using the host while LFS is being built. While
-waiting for package compilation to complete, a user can switch to a
-different virtual console (VC) or X desktop and continue using the
-computer as normal.</para>
+ <para><xref linkend="chapter-temporary-tools"/> also shows the user how to
+ build a first pass of the toolchain, including Binutils and GCC (first pass
+ basically means these two core packages will be re-installed a second time).
+ The next step is to build Glibc, the C library. Glibc will be compiled by
+ the toolchain programs built in the first pass. Then, a second pass of the
+ toolchain will be built. This time, the toolchain will be dynamically linked
+ against the newly built Glibc. The remaining <xref
+ linkend="chapter-temporary-tools"/> packages are built using this second
+ pass toolchain. When this is done, the LFS installation process will no
+ longer depend on the host distribution, with the exception of the running
+ kernel. </para>
-<para>To finish the installation, the LFS-Bootscripts are set up in <xref
-linkend="chapter-bootscripts"/>, and the kernel and boot loader are set
-up in <xref linkend="chapter-bootable"/>. <xref
-linkend="chapter-finalizing"/> contains information on furthering the
-LFS experience beyond this book. After the steps in this book have
-been implemented, the computer will be ready to reboot into the new
-LFS system.</para>
+ <para>This effort to isolate the new system from the host distribution may
+ seem excessive, but a full technical explanation is provided in
+ <xref linkend="ch-tools-toolchaintechnotes"/>.</para>
-<para>This is the process in a nutshell. Detailed information on each
-step is discussed in the following chapters and package descriptions.
-Items that may seem complicated will be clarified, and everything will
-fall into place as the reader embarks on the LFS adventure.</para>
+ <para>In <xref linkend="chapter-building-system"/>, the full LFS system is
+ built. The <command>chroot</command> (change root) program is used to enter
+ a virtual environment and start a new shell whose root directory will be
+ set to the LFS partition. This is very similar to rebooting and instructing
+ the kernel to mount the LFS partition as the root partition. The system
+ does not actually reboot, but instead <command>chroot</command>'s because
+ creating a bootable system requires additional work which is not necessary
+ just yet. The major advantage is that <quote>chrooting</quote> allows the
+ builder to continue using the host while LFS is being built. While waiting
+ for package compilation to complete, a user can switch to a different
+ virtual console (VC) or X desktop and continue using the computer as
+ normal.</para>
-</sect1>
+ <para>To finish the installation, the LFS-Bootscripts are set up in
+ <xref linkend="chapter-bootscripts"/>, and the kernel and boot loader are set
+ up in <xref linkend="chapter-bootable"/>. <xref linkend="chapter-finalizing"/>
+ contains information on furthering the LFS experience beyond this book.
+ After the steps in this book have been implemented, the computer will be
+ ready to reboot into the new LFS system.</para>
+
+ <para>This is the process in a nutshell. Detailed information on each
+ step is discussed in the following chapters and package descriptions.
+ Items that may seem complicated will be clarified, and everything will
+ fall into place as the reader embarks on the LFS adventure.</para>
+</sect1>
diff --git a/chapter01/livecd.xml b/chapter01/livecd.xml
index d76e58506..68c408c55 100644
--- a/chapter01/livecd.xml
+++ b/chapter01/livecd.xml
@@ -1,66 +1,106 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
+<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
+ "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
-<sect1 id="prepare-livecd">
-<title>About the Included CD</title>
-<?dbhtml filename="livecd.html"?>
-<para>For your convenience, we have included a CD with this book that
-contains the source packages needed for creating a Linux From Scratch
-system. The CD is bootable and provides a stable working environment
-for building LFS. This book refers to this system as the
-<quote>host system.</quote> The CD images are actively maintained and
-updated versions can be found at
-<ulink url="ftp://ftp.lfs-matrix.net/pub/lfs-livecd/"/></para>
+<sect1 id="ch-intro-livecd">
+ <?dbhtml filename="livecd.html"?>
-<para>In addition to the tools required to build LFS, the host system
-on the CD has a number of other helpful tools installed:</para>
+ <title>About the Included CD</title>
-<itemizedlist>
- <listitem><para>An HTML version of this book</para></listitem>
- <listitem><para>The X Window System Environment</para></listitem>
- <listitem>
- <para>Web Tools</para>
- <itemizedlist>
- <listitem><para>Wget (command line file retriever)</para></listitem>
- <listitem><para>Lynx (text web browser)</para></listitem>
- <listitem><para>Irssi (console IRC client)</para></listitem>
- <listitem><para>Firefox (graphical web browser)</para></listitem>
- <listitem><para>Xchat (X-based IRC client)</para></listitem>
- </itemizedlist>
- </listitem>
+ <para>For your convenience, we have included a CD with this book that
+ contains the source packages needed for creating a Linux From Scratch
+ system. The CD is bootable and provides a stable working environment
+ for building LFS. This book refers to this system as the
+ <quote>host system.</quote> The CD images are actively maintained and
+ updated versions can be found at
+ <ulink url="ftp://ftp.lfs-matrix.net/pub/lfs-livecd/"/></para>
- <listitem>
- <para>Text Editors</para>
- <itemizedlist>
- <listitem><para>Vim</para></listitem>
- <listitem><para>Nano</para></listitem>
- </itemizedlist>
- </listitem>
+ <para>In addition to the tools required to build LFS, the host system
+ on the CD has a number of other helpful tools installed:</para>
- <listitem>
- <para>Network Tools</para>
- <itemizedlist>
- <listitem><para>SSH Server and Client</para></listitem>
- <listitem><para>NFS Server and Client</para></listitem>
- <listitem><para>Smbmount (mount.cifs) for Windows shares</para></listitem>
- <listitem><para>Subversion</para></listitem>
- <listitem><para>Dhcpcd (DHCP client)</para></listitem>
- </itemizedlist>
- </listitem>
+ <itemizedlist>
- <listitem>
- <para>Filesystem Programs</para>
- <itemizedlist>
- <listitem><para>Reiserfsprogs</para></listitem>
- <listitem><para>Xfsprogs</para></listitem>
- </itemizedlist>
- </listitem>
+ <listitem>
+ <para>An HTML version of this book</para>
+ </listitem>
- <listitem><para>nALFS - A tool for automating LFS builds</para></listitem>
-</itemizedlist>
+ <listitem>
+ <para>The X Window System Environment</para>
+ </listitem>
-</sect1>
+ <listitem>
+ <para>Web Tools</para>
+ <itemizedlist>
+ <listitem>
+ <para>Wget (command line file retriever)</para>
+ </listitem>
+ <listitem>
+ <para>Lynx (text web browser)</para>
+ </listitem>
+ <listitem>
+ <para>Irssi (console IRC client)</para>
+ </listitem>
+ <listitem>
+ <para>Firefox (graphical web browser)</para>
+ </listitem>
+ <listitem>
+ <para>Xchat (X-based IRC client)</para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <para>Text Editors</para>
+ <itemizedlist>
+ <listitem>
+ <para>Vim</para>
+ </listitem>
+ <listitem>
+ <para>Nano</para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <para>Network Tools</para>
+ <itemizedlist>
+ <listitem>
+ <para>SSH Server and Client</para>
+ </listitem>
+ <listitem>
+ <para>NFS Server and Client</para>
+ </listitem>
+ <listitem>
+ <para>Smbmount (mount.cifs) for Windows shares</para>
+ </listitem>
+ <listitem>
+ <para>Subversion</para>
+ </listitem>
+ <listitem>
+ <para>Dhcpcd (DHCP client)</para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <para>Filesystem Programs</para>
+ <itemizedlist>
+ <listitem>
+ <para>Reiserfsprogs</para>
+ </listitem>
+ <listitem>
+ <para>Xfsprogs</para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ <listitem>
+ <para>nALFS - A tool for automating LFS builds</para>
+ </listitem>
+
+ </itemizedlist>
+
+</sect1>
diff --git a/chapter01/resources.xml b/chapter01/resources.xml
new file mode 100644
index 000000000..de67308ff
--- /dev/null
+++ b/chapter01/resources.xml
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
+ "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
+ <!ENTITY % general-entities SYSTEM "../general.ent">
+ %general-entities;
+]>
+
+<sect1 id="ch-intro-resources">
+ <?dbhtml filename="resources.html"?>
+
+ <title>Resources</title>
+
+ <sect2 id="ch-intro-faq">
+ <title>FAQ</title>
+
+ <para>If during the building of the LFS system you encounter any
+ errors, have any questions, or think there is a typo in the book,
+ please start by consulting the Frequently Asked Questions (FAQ)
+ that is located at <ulink url="&faq-root;"/>.</para>
+
+ </sect2>
+
+ <sect2 id="ch-intro-maillists" xreflabel="Chapter 1 - Mailing Lists">
+ <title>Mailing Lists</title>
+
+ <para>The <uri>linuxfromscratch.org</uri> server hosts a number of mailing
+ lists used for the development of the LFS project. These lists include the
+ main development and support lists, among others. If the FAQ does not solve
+ the problem you are having, the next step would be to search the mailing
+ lists at <ulink url="&lfs-root;search.html"/>.</para>
+
+ <para>For information on the different lists, how to subscribe, archive
+ locations, and additional information, visit
+ <ulink url="&lfs-root;mail.html"/>.</para>
+
+ </sect2>
+
+ <!-- Remove until such time as we have our own News Server, JH 20060105
+ <sect2 id="ch-intro-newsserver">
+ <title>News Server</title>
+
+ <para>The mailing lists hosted at <uri>linuxfromscratch.org</uri> are
+ also accessible via the Network News Transfer Protocol (NNTP) server.
+ All messages posted to a mailing list are copied to the corresponding
+ newsgroup, and vice versa.</para>
+
+ <para>The news server is located at
+ <uri>news.linuxfromscratch.org</uri>.</para>
+
+ </sect2> -->
+
+ <sect2 id="ch-intro-irc">
+ <title>IRC</title>
+
+ <para>Several members of the LFS community offer assistance on our
+ community Internet Relay Chat (IRC) network. Before using this support,
+ please make sure that your question is not already answered in the LFS
+ FAQ or the mailing list archives. You can find the IRC network at
+ <uri>irc.linuxfromscratch.org</uri>. The support channel is named
+ #LFS-support.</para>
+
+ </sect2>
+
+ <sect2 id="ch-intro-references">
+ <title>References</title>
+
+ <para>For additional information on the packages, useful tips are
+ available in the LFS Package Reference page located at <ulink
+ url="http://www.linuxfromscratch.org/~matthew/LFS-references.html"/>.</para>
+
+ </sect2>
+
+ <sect2 id="ch-intro-mirrors" xreflabel="Chapter 1 - Mirror sites">
+ <title>Mirror Sites</title>
+
+ <para>The LFS project has a number of world-wide mirrors to make accessing
+ the website and downloading the required packages more convenient. Please
+ visit the LFS website at <ulink url="&lfs-root;mirrors.html"/> for a list
+ of current mirrors.</para>
+
+ </sect2>
+
+ <sect2 id="ch-intro-contactinfo">
+ <title>Contact Information</title>
+
+ <para>Please direct all your questions and comments to one of the LFS
+ mailing lists (see above).</para>
+
+ </sect2>
+
+</sect1>
diff --git a/chapter03/packages.xml b/chapter03/packages.xml
index 8f3002c93..29c822a7a 100644
--- a/chapter03/packages.xml
+++ b/chapter03/packages.xml
@@ -40,6 +40,13 @@
</varlistentry>
<varlistentry>
+<term>Berkeley DB (&db-version;) - 7,925 KB:</term>
+<listitem>
+<para><ulink url="http://dev.sleepycat.com/"/></para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
<term>Binutils (&binutils-version;) - 12,272 KB:</term>
<listitem>
<para><ulink url="&gnu;binutils/"/></para>
@@ -68,13 +75,6 @@
</varlistentry>
<varlistentry>
-<term>DB (&db-version;) - 7,925 KB:</term>
-<listitem>
-<para><ulink url="http://dev.sleepycat.com/"/></para>
-</listitem>
-</varlistentry>
-
-<varlistentry>
<term>DejaGNU (&dejagnu-version;) - 852 KB:</term>
<listitem>
<para><ulink url="&gnu;dejagnu/"/></para>
diff --git a/chapter06/db.xml b/chapter06/db.xml
index ae49f34c3..b133a254d 100644
--- a/chapter06/db.xml
+++ b/chapter06/db.xml
@@ -4,19 +4,19 @@
%general-entities;
]>
<sect1 id="ch-system-db" role="wrap">
-<title>DB-&db-version;</title>
+<title>Berkeley DB-&db-version;</title>
<?dbhtml filename="db.html"?>
-<indexterm zone="ch-system-db"><primary sortas="a-DB">Berkeley DB</primary></indexterm>
+<indexterm zone="ch-system-db"><primary sortas="a-Berkeley-DB">Berkeley DB</primary></indexterm>
<sect2 role="package"><title/>
-<para>The DB package contains programs and utilities used by many other
+<para>The Berkeley DB package contains programs and utilities used by many other
applications for database related functions.</para>
<segmentedlist>
<segtitle>&buildtime;</segtitle>
<segtitle>&diskspace;</segtitle>
-<seglistitem><seg>1.0 SBU</seg><seg>74 MB</seg></seglistitem>
+<seglistitem><seg>1.2 SBU</seg><seg>78 MB</seg></seglistitem>
</segmentedlist>
<segmentedlist>
@@ -24,12 +24,22 @@ applications for database related functions.</para>
<seglistitem><seg>Bash, Binutils, Coreutils,
Diffutils, GCC, Glibc, Make and Sed.</seg></seglistitem>
</segmentedlist>
+
+<tip>
+<title>Extra functionality for Berkeley DB in BLFS</title>
+<para>There are instructions to build this package in the BLFS book if you need to build the RPC server or additional language bindings. The
+additional language bindings will require additional packages to be
+installed. The BLFS instructions are located at
+<ulink url="&blfs-root;view/svn/server/databases.html#db"/>
+for suggested installation instructions.</para>
+</tip>
+
</sect2>
<sect2 role="installation">
-<title>Installation of DB</title>
+<title>Installation of Berkeley DB</title>
-<para>Prepare DB for compilation:</para>
+<para>Prepare Berkeley DB for compilation:</para>
<screen><userinput>cd build_unix &amp;&amp;
../dist/configure --prefix=/usr --enable-compat185 --enable-cxx</userinput></screen>
@@ -39,7 +49,7 @@ Diffutils, GCC, Glibc, Make and Sed.</seg></seglistitem>
<variablelist>
<varlistentry>
<term><parameter>--enable-compat185</parameter></term>
-<listitem><para>This option enables building DB 1.85 compatibility API.</para></listitem>
+<listitem><para>This option enables building Berkeley DB 1.85 compatibility API.</para></listitem>
</varlistentry>
<varlistentry>
@@ -50,17 +60,7 @@ Diffutils, GCC, Glibc, Make and Sed.</seg></seglistitem>
<para>Compile the package:</para>
-<screen><userinput>make LIBSO_LIBS="-lpthread" LIBXSO_LIBS="-lpthread"</userinput></screen>
-
-<para>The meaning of the make option:</para>
-
-<variablelist>
-<varlistentry>
-<term><parameter>LIBSO_LIBS="-lpthread" LIBXSO_LIBS="-lpthread"</parameter></term>
-<listitem><para>These variables work around a bug in the <command>configure</command>
-script that causes the DB libraries not to link against NPTL libraries</para></listitem>
-</varlistentry>
-</variablelist>
+<screen><userinput>make</userinput></screen>
<para>It is not possible to test the package meaningfully, because that
would involve building TCL bindings. TCL bindings cannot be built properly
@@ -80,7 +80,7 @@ not against Glibc in <filename class="directory">/usr</filename>.</para>
</varlistentry>
</variablelist>
-<para>Fix the permissions on the installed documentation files:</para>
+<para>Fix the ownerships of the installed files:</para>
<screen><userinput>chown root:root /usr/bin/db_* \
/usr/lib/libdb* /usr/include/db* &amp;&amp;
@@ -89,7 +89,7 @@ chown -R root:root /usr/share/doc/db-&db-version;</userinput></screen>
</sect2>
-<sect2 id="contents-db" role="content"><title>Contents of DB</title>
+<sect2 id="contents-db" role="content"><title>Contents of Berkeley DB</title>
<segmentedlist>
<segtitle>Installed programs</segtitle>
<seglistitem><seg>db_archive, db_checkpoint, db_deadlock, db_dump,
diff --git a/chapter06/gcc.xml b/chapter06/gcc.xml
index e3c7538b4..7f4c8b18b 100644
--- a/chapter06/gcc.xml
+++ b/chapter06/gcc.xml
@@ -53,6 +53,14 @@ to not require fixing, issue the following command to prevent the
<screen><userinput>sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in</userinput></screen>
+<para>GCC provides a <command>gccbug</command> script which detects at
+compile time whether mktemp is present, and hardcodes the result in a test.
+This will cause the script to fall back to using less random names for
+temporary files. We will be installing mktemp later, so the following sed
+will simulate its presence.</para>
+
+<screen>sed -i 's/@have_mktemp_command@/yes/' gcc/gccbug.in</screen>
+
<para>The GCC documentation recommends building GCC outside of the source
directory in a dedicated build directory:</para>
diff --git a/chapter06/iproute2.xml b/chapter06/iproute2.xml
index 09d61143a..64397da3c 100644
--- a/chapter06/iproute2.xml
+++ b/chapter06/iproute2.xml
@@ -25,7 +25,7 @@
<segmentedlist>
<segtitle>&dependencies;</segtitle>
<seglistitem>
- <seg>DB, GCC, Glibc, Make, and Linux-Headers</seg>
+ <seg>Berkeley DB, GCC, Glibc, Make, and Linux-Headers</seg>
</seglistitem>
</segmentedlist>
</sect2>
@@ -59,7 +59,7 @@
<screen><userinput>make SBINDIR=/sbin install</userinput></screen>
- <para>The <command>arpd</command> binary links against the DB libraries
+ <para>The <command>arpd</command> binary links against the Berkeley DB libraries
that reside in <filename class="directory">/usr</filename> and
uses a database in <filename>/var/lib/arpd/arpd.db</filename>. Thus,
according to the FHS, it must be
diff --git a/chapter06/man-db.xml b/chapter06/man-db.xml
index c41b38cbc..3da4edb26 100644
--- a/chapter06/man-db.xml
+++ b/chapter06/man-db.xml
@@ -20,8 +20,8 @@
<segmentedlist>
<segtitle>&dependencies;</segtitle>
-<seglistitem><seg>Bash, Binutils, Coreutils, Gawk, GCC, DB,
-Glibc, Gettext, Grep, Make, and Sed</seg></seglistitem>
+<seglistitem><seg>Bash, Berkeley DB, Binutils, Coreutils, Gawk, GCC,
+Gettext, Glibc, Grep, Make, and Sed</seg></seglistitem>
</segmentedlist>
</sect2>
diff --git a/chapter06/man.xml b/chapter06/man.xml
deleted file mode 100644
index e69de29bb..000000000
--- a/chapter06/man.xml
+++ /dev/null
diff --git a/chapter06/perl.xml b/chapter06/perl.xml
index 13874c8e8..7bdb21225 100644
--- a/chapter06/perl.xml
+++ b/chapter06/perl.xml
@@ -20,7 +20,7 @@
<segmentedlist>
<segtitle>&dependencies;</segtitle>
-<seglistitem><seg>Bash, Binutils, Coreutils, DB, Diffutils,
+<seglistitem><seg>Bash, Berkeley DB, Binutils, Coreutils, Diffutils,
Gawk, GCC, Glibc, Grep, Iana-Etc, Make, Patch, and Sed</seg></seglistitem>
</segmentedlist>
</sect2>
@@ -28,6 +28,12 @@ Gawk, GCC, Glibc, Grep, Iana-Etc, Make, Patch, and Sed</seg></seglistitem>
<sect2 role="installation">
<title>Installation of Perl</title>
+<para>First create a basic <filename>/etc/hosts</filename> file which will be
+referenced in one of Perl's configuration files as well as being used used by
+the testsuite if you run that.</para>
+
+<screen><userinput>echo "127.0.0.1 localhost $(hostname)" &gt; /etc/hosts</userinput></screen>
+
<para>To have full control over the way Perl is set up, run the
interactive <command>Configure</command> script and hand-pick the way
this package is built. If the defaults it auto-detects are suitable,
@@ -50,12 +56,6 @@ prepare Perl for compilation with:</para>
<screen><userinput>make</userinput></screen>
-<para>To run the test suite, first create a basic
-<filename>/etc/hosts</filename> file which is needed by a couple of the tests to
-resolve the network name localhost:</para>
-
-<screen><userinput>echo "127.0.0.1 localhost $(hostname)" &gt; /etc/hosts</userinput></screen>
-
<para>Now run the tests, if desired:</para>
<screen><userinput>make test</userinput></screen>
diff --git a/chapter07/hosts.xml b/chapter07/hosts.xml
index 6e6549913..8680d011e 100644
--- a/chapter07/hosts.xml
+++ b/chapter07/hosts.xml
@@ -8,7 +8,7 @@
<sect1 id="ch-scripts-hosts">
<?dbhtml filename="hosts.html"?>
- <title>Creating the /etc/hosts File</title>
+ <title>Customizing the /etc/hosts File</title>
<indexterm zone="ch-scripts-hosts">
<primary sortas="e-/etc/hosts">/etc/hosts</primary>
diff --git a/chapter09/whatnow.xml b/chapter09/whatnow.xml
index 445564e1a..8e7fa33c7 100644
--- a/chapter09/whatnow.xml
+++ b/chapter09/whatnow.xml
@@ -81,7 +81,7 @@
<para>There are several LFS mailing lists you may subscribe to if you
are in need of help, want to stay current with the latest developments,
want to contribute to the project, and more. See <xref
- linkend="ch-scatter-maillists"/> for more
+ linkend="ch-intro-maillists"/> for more
information.</para>
</listitem>