aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chapter05/libstdc++.xml10
-rw-r--r--prologue/architecture.xml65
-rw-r--r--prologue/preface.xml2
3 files changed, 31 insertions, 46 deletions
diff --git a/chapter05/libstdc++.xml b/chapter05/libstdc++.xml
index 42a304bfe..66128aa8a 100644
--- a/chapter05/libstdc++.xml
+++ b/chapter05/libstdc++.xml
@@ -63,8 +63,8 @@ cd build</userinput></screen>
--host=$LFS_TGT \
--prefix=/tools \
--disable-multilib \
- --disable-nls \
- --disable-libstdcxx-threads \
+ --disable-nls \<!--
+ - -disable-libstdcxx-threads \-->
--disable-libstdcxx-pch \
--with-gxx-include-dir=/tools/$LFS_TGT/include/c++/&gcc-version;</userinput></screen>
@@ -78,15 +78,15 @@ cd build</userinput></screen>
instead of the one in <filename>/usr/bin</filename>.</para>
</listitem>
</varlistentry>
-
+ <!--
<varlistentry>
- <term><parameter>--disable-libstdcxx-threads</parameter></term>
+ <term><parameter>- -disable-libstdcxx-threads</parameter></term>
<listitem>
<para>Since gcc-pass1 is built without thread support, the C++
thread library cannot be built either.</para>
</listitem>
</varlistentry>
-
+ -->
<varlistentry>
<term><parameter>--disable-libstdcxx-pch</parameter></term>
<listitem>
diff --git a/prologue/architecture.xml b/prologue/architecture.xml
index a6a456c83..f23d19cab 100644
--- a/prologue/architecture.xml
+++ b/prologue/architecture.xml
@@ -14,52 +14,37 @@
and x86_64 (64-bit) CPUs. On the other hand, the instructions in this book are
also known to work, with some modifications, with the Power PC and ARM CPUs. To
build a system that utilizes one of these CPUs, the main prerequisite, in
-addition to those on the next few pages, is an existing Linux system such as an
+addition to those on the next page, is an existing Linux system such as an
earlier LFS installation, Ubuntu, Red Hat/Fedora, SuSE, or other distribution
that targets the architecture that you have. Also note that a 32-bit
distribution can be installed and used as a host system on a 64-bit AMD/Intel
computer.</para>
-<para>Some other facts about 64-bit systems need to be added here. When
-compared to a 32-bit system, the sizes of executable programs are slightly
-larger and the execution speeds of arbitrary programs are only slightly faster.
-For example, in a test build of LFS-6.5 on a Core2Duo CPU based system, the
-following statistics were measured:</para>
+<para>For building LFS, the gain of building on a 64-bit system
+compared to a 32-bit system is minimal.
+For example, in a test build of LFS-9.1 on a Core i7-4790 CPU based system,
+using 4 cores, the following statistics were measured:</para>
<screen><computeroutput>Architecture Build Time Build Size
-32-bit 198.5 minutes 648 MB
-64-bit 190.6 minutes 709 MB</computeroutput></screen>
-
-<para>As you can see, the 64-bit build is only 4% faster and is 9% larger than
-the 32-bit build. The gain from going to a 64-bit system is relatively
-minimal. Of course, if you have more than 4GB of RAM or want to manipulate
-data that exceeds 4GB, the advantages of a 64-bit system are substantial.</para>
-
-<note><para>The above discussion is only appropriate when comparing
-builds on the same hardware. Modern 64-bit systems are considerably
-faster than older 64-bit systems and the LFS authors recommend building
-on a 64-bit system when given a choice.</para></note>
-
-<para>The default 64-bit build that results from LFS is considered a "pure"
-64-bit system. That is, it supports 64-bit executables only. Building a
-"multi-lib" system requires compiling many applications twice, once for a
-32-bit system and once for a 64-bit system. This is not directly supported in
-LFS because it would interfere with the educational objective of providing the
-instructions needed for a straightforward base Linux system. You can refer to
-the <ulink url="http://trac.clfs.org/">Cross Linux From Scratch</ulink>
-project for this advanced topic.</para>
-
-<!-- This does not appear to be valid for LFS/BLFS any more
-<para>There is one last comment about 64-bit systems. There are some older
-packages that cannot currently be built in a "pure" 64-bit system or require
-specialized build instructions. Generally, these packages have some embedded
-32-bit specific assembly language instructions that fail when building on a
-64-bit system. This includes some Xorg drivers for some legacy video cards at
-<ulink url="http://xorg.freedesktop.org/releases/individual/driver/">
-http://xorg.freedesktop.org/releases/individual/driver/</ulink>. Many of these
-problems can be worked around, but may require some specialized procedures or
-patches.</para>
--->
+32-bit 239.9 minutes 3.6 GB
+64-bit 233.2 minutes 4.4 GB</computeroutput></screen>
+
+<para>As you can see, on the same hardware, the 64-bit build is only 3% faster
+and is 22% larger than the 32-bit build. If you plan to use LFS as a LAMP
+server, or a firewall, a 32-bit CPU may be largely sufficient. On the other
+hand, several packages in BLFS now need more that 4GB of RAM to be built
+and/or to run, so that if you plan to use LFS as a desktop, the LFS authors
+recommend building on a 64-bit system.</para>
+
+<para>The default 64-bit build that results from LFS is considered a
+<quote>pure</quote> 64-bit system. That is, it supports 64-bit executables
+only. Building a <quote>multi-lib</quote> system requires compiling many
+applications twice, once for a 32-bit system and once for a 64-bit system.
+This is not directly supported in LFS because it would interfere with the
+educational objective of providing the instructions needed for a
+straightforward base Linux system. Some LFS/BLFS editors maintain a fork
+of LFS for multilib, which is accessible at <ulink
+url="http://www.linuxfromscratch.org/~thomas/multilib/index.html"/>. But it
+is an advanced topic.</para>
</sect1>
-
diff --git a/prologue/preface.xml b/prologue/preface.xml
index 21317757f..e940116e1 100644
--- a/prologue/preface.xml
+++ b/prologue/preface.xml
@@ -14,9 +14,9 @@
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="foreword.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="audience.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="architecture.xml"/>
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="prerequisites.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="standards.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="why.xml"/>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="prerequisites.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="typography.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="organization.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="errata.xml"/>