| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 | <?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><para>The primary target architectures of LFS are the AMD/Intel x86 (32-bit)and x86_64 (64-bit) CPUs.  On the other hand, the instructions in this book arealso known to work, with some modifications, with the Power PC and ARM CPUs. Tobuild a system that utilizes one of these CPUs, the main prerequisite, inaddition to those on the next few pages, is an existing Linux system such as anearlier LFS installation, Ubuntu, Red Hat/Fedora, SuSE, or other distributionthat targets the architecture that you have. Also note that a 32-bitdistribution can be installed and used as a host system on a 64-bit AMD/Intelcomputer.</para><para>Some other facts about 64-bit systems need to be added here. Whencompared to a 32-bit system, the sizes of executable programs are slightlylarger and the execution speeds are only slightly faster. For example, in atest build of LFS-6.5 on a Core2Duo CPU based system, the following statisticswere measured:</para><screen><computeroutput>Architecture Build Time     Build Size32-bit       198.5 minutes  648 MB64-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 thanthe 32-bit build.  The gain from going to a 64-bit system is relativelyminimal. Of course, if you have more than 4GB of RAM or want to manipulatedata 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"64-bit system. That is, it supports 64-bit executables only. Building a"multi-lib" system requires compiling many applications twice, once for a32-bit system and once for a 64-bit system. This is not directly supported inLFS because it would interfere with the educational objective of providing theinstructions needed for a straightforward base Linux system.  You can refer tothe <ulink url="http://trac.cross-lfs.org/">Cross Linux From Scratch</ulink>project for this advanced topic.</para><para>There is one last comment about 64-bit systems. There are some olderpackages that cannot currently be built in a "pure" 64-bit system or requirespecialized build instructions. Generally, these packages have some embedded32-bit specific assembly language instructions that fail when building on a64-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 theseproblems can be worked around, but may require some specialized procedures orpatches.</para></sect1>
 |