source: prologue/architecture.xml@ 7d9f881

multilib-10.1 multilib-before-cross
Last change on this file since 7d9f881 was 7d9f881, checked in by Thomas Trepl <thomas@…>, 3 years ago

Merge trunk, add multilib.xml to prologue

git-svn-id: 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

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