[8988b94] | 1 | <?xml version="1.0" encoding="ISO-8859-1"?>
|
---|
| 2 | <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
---|
| 3 | "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
---|
| 4 | <!ENTITY % general-entities SYSTEM "../general.ent">
|
---|
| 5 | %general-entities;
|
---|
| 6 | ]>
|
---|
| 7 |
|
---|
| 8 | <sect1 id="pre-architecture">
|
---|
| 9 | <?dbhtml filename="architecture.html"?>
|
---|
| 10 |
|
---|
| 11 | <title>LFS Target Architectures</title>
|
---|
| 12 |
|
---|
[14377f4] | 13 | <para>The primary target architectures of LFS are the AMD/Intel x86 (32-bit)
|
---|
| 14 | and x86_64 (64-bit) CPUs. On the other hand, the instructions in this book are
|
---|
[e043985] | 15 | also known to work, with some modifications, with the Power PC and ARM CPUs. To
|
---|
| 16 | build a system that utilizes one of these CPUs, the main prerequisite, in
|
---|
| 17 | addition to those on the next few pages, is an existing Linux system such as an
|
---|
| 18 | earlier LFS installation, Ubuntu, Red Hat/Fedora, SuSE, or other distribution
|
---|
| 19 | that targets the architecture that you have. Also note that a 32-bit
|
---|
| 20 | distribution can be installed and used as a host system on a 64-bit AMD/Intel
|
---|
| 21 | computer.</para>
|
---|
[c6d5b092] | 22 |
|
---|
[12c82b50] | 23 | <para>Some other facts about 64-bit systems need to be added here. When
|
---|
[8988b94] | 24 | compared to a 32-bit system, the sizes of executable programs are slightly
|
---|
[0d84af1] | 25 | larger and the execution speeds of arbitrary programs are only slightly faster.
|
---|
| 26 | For example, in a test build of LFS-6.5 on a Core2Duo CPU based system, the
|
---|
| 27 | following statistics were measured:</para>
|
---|
[8988b94] | 28 |
|
---|
[2ca8941] | 29 | <screen><computeroutput>Architecture Build Time Build Size
|
---|
| 30 | 32-bit 198.5 minutes 648 MB
|
---|
[8988b94] | 31 | 64-bit 190.6 minutes 709 MB</computeroutput></screen>
|
---|
| 32 |
|
---|
| 33 | <para>As you can see, the 64-bit build is only 4% faster and is 9% larger than
|
---|
| 34 | the 32-bit build. The gain from going to a 64-bit system is relatively
|
---|
| 35 | minimal. Of course, if you have more than 4GB of RAM or want to manipulate
|
---|
| 36 | data that exceeds 4GB, the advantages of a 64-bit system are substantial.</para>
|
---|
| 37 |
|
---|
[0d84af1] | 38 | <note><para>The above discussion is only appropriate when comparing
|
---|
| 39 | builds on the same hardware. Modern 64-bit systems are considerably
|
---|
| 40 | faster than older 64-bit systems and the LFS authors recommend building
|
---|
| 41 | on a 64-bit system when given a choice.</para></note>
|
---|
| 42 |
|
---|
[8988b94] | 43 | <para>The default 64-bit build that results from LFS is considered a "pure"
|
---|
[c6d5b092] | 44 | 64-bit system. That is, it supports 64-bit executables only. Building a
|
---|
[cbd8a1a2] | 45 | "multi-lib" system requires compiling many applications twice, once for a
|
---|
| 46 | 32-bit system and once for a 64-bit system. This is not directly supported in
|
---|
[4d2dd2e] | 47 | LFS because it would interfere with the educational objective of providing the
|
---|
[12c82b50] | 48 | instructions needed for a straightforward base Linux system. You can refer to
|
---|
[a02b8ef] | 49 | the <ulink url="http://trac.clfs.org/">Cross Linux From Scratch</ulink>
|
---|
[cbd8a1a2] | 50 | project for this advanced topic.</para>
|
---|
[8988b94] | 51 |
|
---|
[6bf3f58] | 52 | <!-- This does not appear to be valid for LFS/BLFS any more
|
---|
[14377f4] | 53 | <para>There is one last comment about 64-bit systems. There are some older
|
---|
| 54 | packages that cannot currently be built in a "pure" 64-bit system or require
|
---|
| 55 | specialized build instructions. Generally, these packages have some embedded
|
---|
| 56 | 32-bit specific assembly language instructions that fail when building on a
|
---|
| 57 | 64-bit system. This includes some Xorg drivers for some legacy video cards at
|
---|
| 58 | <ulink url="http://xorg.freedesktop.org/releases/individual/driver/">
|
---|
| 59 | http://xorg.freedesktop.org/releases/individual/driver/</ulink>. Many of these
|
---|
| 60 | problems can be worked around, but may require some specialized procedures or
|
---|
| 61 | patches.</para>
|
---|
[6bf3f58] | 62 | -->
|
---|
[8988b94] | 63 |
|
---|
| 64 | </sect1>
|
---|
| 65 |
|
---|