Changeset 394dc3fc

02/29/2020 12:25:06 PM (20 months ago)
Pierre Labastie <pieere@…>
10.0, 10.0-rc1, 10.1, 10.1-rc1, 11.0, 11.0-rc1, 11.0-rc2, 11.0-rc3, 9.1, cross-chap5, ml-11.0, multilib, old-trunk, trunk, xry111/git-transition, xry111/glibc-2.34, xry111/tester-nohack, xry111/usr-move

Make the "target architectures" section more up to date

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

3 edited


  • chapter05/libstdc++.xml

    r09e3f94 r394dc3fc  
    6464    --prefix=/tools                 \
    6565    --disable-multilib              \
    66     --disable-nls                   \
    67     --disable-libstdcxx-threads     \
     66    --disable-nls                   \<!--
     67    - -disable-libstdcxx-threads     \-->
    6868    --disable-libstdcxx-pch         \
    6969    --with-gxx-include-dir=/tools/$LFS_TGT/include/c++/&gcc-version;</userinput></screen>
    7979        </listitem>
    8080      </varlistentry>
     81        <!--
    8282      <varlistentry>
    83         <term><parameter>--disable-libstdcxx-threads</parameter></term>
     83        <term><parameter>- -disable-libstdcxx-threads</parameter></term>
    8484        <listitem>
    8585          <para>Since gcc-pass1 is built without thread support, the C++
    8787        </listitem>
    8888      </varlistentry>
     89        -->
    9090      <varlistentry>
    9191        <term><parameter>--disable-libstdcxx-pch</parameter></term>
  • prologue/architecture.xml

    r09e3f94 r394dc3fc  
    1515also known to work, with some modifications, with the Power PC and ARM CPUs. To
    1616build 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
     17addition to those on the next page, is an existing Linux system such as an
    1818earlier LFS installation, Ubuntu, Red Hat/Fedora, SuSE, or other distribution
    1919that targets the architecture that you have. Also note that a 32-bit
    23 <para>Some other facts about 64-bit systems need to be added here. When
    24 compared to a 32-bit system, the sizes of executable programs are slightly
    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>
     23<para>For building LFS, the gain of building on a 64-bit system
     24compared to a 32-bit system is minimal.
     25For example, in a test build of LFS-9.1 on a Core i7-4790 CPU based system,
     26using 4 cores, the following statistics were measured:</para>
    2928<screen><computeroutput>Architecture Build Time     Build Size
    30 32-bit       198.5 minutes  648 MB
    31 64-bit       190.6 minutes  709 MB</computeroutput></screen>
     2932-bit       239.9 minutes  3.6 GB
     3064-bit       233.2 minutes  4.4 GB</computeroutput></screen>
    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>
     32<para>As you can see, on the same hardware, the 64-bit build is only 3% faster
     33and is 22% larger than the 32-bit build. If you plan to use LFS as a LAMP
     34server, or a firewall, a 32-bit CPU may be largely sufficient. On the other
     35hand, several packages in BLFS now need more that 4GB of RAM to be built
     36and/or to run, so that if you plan to use LFS as a desktop, the LFS authors
     37recommend building on a 64-bit system.</para>
    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>
    43 <para>The default 64-bit build that results from LFS is considered a "pure"
    44 64-bit system. That is, it supports 64-bit executables only. Building a
    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
    47 LFS because it would interfere with the educational objective of providing the
    48 instructions needed for a straightforward base Linux system.  You can refer to
    49 the <ulink url="">Cross Linux From Scratch</ulink>
    50 project 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
    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="">
    59</ulink>. Many of these
    60 problems can be worked around, but may require some specialized procedures or
    61 patches.</para>
    62 -->
     39<para>The default 64-bit build that results from LFS is considered a
     40<quote>pure</quote> 64-bit system. That is, it supports 64-bit executables
     41only. Building a <quote>multi-lib</quote> system requires compiling many
     42applications twice, once for a 32-bit system and once for a 64-bit system.
     43This is not directly supported in LFS because it would interfere with the
     44educational objective of providing the instructions needed for a
     45straightforward base Linux system. Some LFS/BLFS editors maintain a fork
     46of LFS for multilib, which is accessible at <ulink
     47url=""/>. But it
     48is an advanced topic.</para>
  • prologue/preface.xml

    r09e3f94 r394dc3fc  
    1515  <xi:include xmlns:xi="" href="audience.xml"/>
    1616  <xi:include xmlns:xi="" href="architecture.xml"/>
     17  <xi:include xmlns:xi="" href="prerequisites.xml"/>
    1718  <xi:include xmlns:xi="" href="standards.xml"/>
    1819  <xi:include xmlns:xi="" href="why.xml"/>
    19   <xi:include xmlns:xi="" href="prerequisites.xml"/>
    2020  <xi:include xmlns:xi="" href="typography.xml"/>
    2121  <xi:include xmlns:xi="" href="organization.xml"/>
Note: See TracChangeset for help on using the changeset viewer.