2009-09-10 07:12:28 +01:00
|
|
|
<?xml version="1.0" encoding="ISO-8859-1"?>
|
|
|
|
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
|
|
|
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
|
|
|
<!ENTITY % general-entities SYSTEM "../general.ent">
|
|
|
|
%general-entities;
|
|
|
|
]>
|
|
|
|
|
|
|
|
<sect1 id="pre-architecture">
|
|
|
|
<?dbhtml filename="architecture.html"?>
|
|
|
|
|
|
|
|
<title>LFS Target Architectures</title>
|
|
|
|
|
2010-01-09 07:15:55 +00:00
|
|
|
<para>The primary target architecture of LFS is the 32-bit Intel CPU. If you
|
2009-09-10 07:12:28 +01:00
|
|
|
have not built an LFS system before, you should probably start with that
|
2010-01-09 07:15:55 +00:00
|
|
|
target. The 32-bit architecture is the most widely supported Linux system and
|
2009-09-10 07:12:28 +01:00
|
|
|
is most compatible with both open source and proprietary software.</para>
|
|
|
|
|
|
|
|
<para>On the other hand, the instructions in this book are known to work, with
|
2010-01-09 07:15:55 +00:00
|
|
|
some modifications, with both Power PC and 64-bit AMD/Intel 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 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>
|
|
|
|
|
2010-02-19 20:17:17 +00:00
|
|
|
<para>Some other facts about 64-bit systems need to be added here. When
|
2009-09-10 07:12:28 +01:00
|
|
|
compared to a 32-bit system, the sizes of executable programs are slightly
|
2010-01-09 07:15:55 +00:00
|
|
|
larger and the execution speeds are only slightly faster. For example, in a
|
2009-09-10 07:12:28 +01:00
|
|
|
test build of LFS-6.5 on a Core2Duo CPU based system, 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>
|
|
|
|
|
|
|
|
<para>The default 64-bit build that results from LFS is considered a "pure"
|
2010-01-09 07:15:55 +00:00
|
|
|
64-bit system. That is, it supports 64-bit executables only. Building a
|
2010-01-31 22:21:06 +00:00
|
|
|
"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
|
2010-02-26 16:38:41 +00:00
|
|
|
LFS because it would interfere with the educational objective of providing the
|
2010-02-19 20:17:17 +00:00
|
|
|
instructions needed for a straightforward base Linux system. You can refer to
|
2010-01-31 22:21:06 +00:00
|
|
|
the <ulink url="http://trac.cross-lfs.org/">Cross Linux From Scratch</ulink>
|
|
|
|
project for this advanced topic.</para>
|
2009-09-10 07:12:28 +01:00
|
|
|
|
2010-01-09 07:15:55 +00:00
|
|
|
<para>There is one last comment about 64-bit systems. There are some packages
|
2009-09-10 07:12:28 +01:00
|
|
|
that cannot currently be built in a "pure" 64-bit system or require specialized
|
2010-01-09 07:15:55 +00:00
|
|
|
build instructions. Generally, these packages have some embedded 32-bit
|
2009-09-10 07:12:28 +01:00
|
|
|
specific assembly language instructions that fail when building on a 64-bit
|
2010-02-19 20:17:17 +00:00
|
|
|
system. This includes some Xorg drivers from <ulink
|
2009-11-23 08:36:36 +00:00
|
|
|
url="http://www.linuxfromscratch.org/blfs/view/svn/">Beyond Linux From Scratch
|
2010-02-19 20:17:17 +00:00
|
|
|
(BLFS)</ulink>. Many of these problems can be worked around, but may require
|
|
|
|
some specialized procedures or patches.</para>
|
2009-09-10 07:12:28 +01:00
|
|
|
|
|
|
|
</sect1>
|
|
|
|
|