[7152faa] | 1 | <?xml version="1.0" encoding="UTF-8"?>
|
---|
[8988b94] | 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
|
---|
[7739ad3] | 16 | build a system that utilizes one of these alternative CPUs, the main prerequisite, in
|
---|
[394dc3fc] | 17 | addition to those on the next page, is an existing Linux system such as an
|
---|
[7739ad3] | 18 | earlier LFS installation, Ubuntu, Red Hat/Fedora, SuSE, or some other distribution
|
---|
| 19 | that targets that architecture. (Note that a 32-bit
|
---|
[e043985] | 20 | distribution can be installed and used as a host system on a 64-bit AMD/Intel
|
---|
[7739ad3] | 21 | computer.)</para>
|
---|
[c6d5b092] | 22 |
|
---|
[7739ad3] | 23 | <para>The gain from building on a 64-bit system, as
|
---|
| 24 | compared to a 32-bit system, is minimal.
|
---|
[394dc3fc] | 25 | For example, in a test build of LFS-9.1 on a Core i7-4790 CPU based system,
|
---|
| 26 | using 4 cores, the following statistics were measured:</para>
|
---|
[8988b94] | 27 |
|
---|
[2ca8941] | 28 | <screen><computeroutput>Architecture Build Time Build Size
|
---|
[394dc3fc] | 29 | 32-bit 239.9 minutes 3.6 GB
|
---|
| 30 | 64-bit 233.2 minutes 4.4 GB</computeroutput></screen>
|
---|
| 31 |
|
---|
| 32 | <para>As you can see, on the same hardware, the 64-bit build is only 3% faster
|
---|
[7739ad3] | 33 | (and 22% larger) than the 32-bit build. If you plan to use LFS as a LAMP
|
---|
| 34 | server, or a firewall, a 32-bit CPU may be good enough. On the other
|
---|
| 35 | hand, several packages in BLFS now need more than 4 GB of RAM to be built
|
---|
| 36 | and/or to run; if you plan to use LFS as a desktop, the LFS authors
|
---|
| 37 | recommend building a 64-bit system.</para>
|
---|
[394dc3fc] | 38 |
|
---|
[7739ad3] | 39 | <para>The default 64-bit build that results from LFS is a
|
---|
[394dc3fc] | 40 | <quote>pure</quote> 64-bit system. That is, it supports 64-bit executables
|
---|
| 41 | only. Building a <quote>multi-lib</quote> system requires compiling many
|
---|
| 42 | applications twice, once for a 32-bit system and once for a 64-bit system.
|
---|
| 43 | This is not directly supported in LFS because it would interfere with the
|
---|
[7739ad3] | 44 | educational objective of providing the minimal instructions needed for a
|
---|
| 45 | basic Linux system. Some of the LFS/BLFS editors maintain a multilib fork
|
---|
| 46 | of LFS, accessible at <ulink
|
---|
| 47 | url="https://www.linuxfromscratch.org/~thomas/multilib/index.html"/>. But
|
---|
| 48 | that's an advanced topic.</para>
|
---|
[8988b94] | 49 |
|
---|
| 50 | </sect1>
|
---|