Changeset 69993f4 for chapter04


Ignore:
Timestamp:
08/29/2004 06:36:34 PM (20 years ago)
Author:
Gerard Beekmans <gerard@…>
Branches:
6.0
Children:
8b320e7
Parents:
ec0a37e6
Message:

Second round of edits for final release

git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/testing/BOOK@4066 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

Location:
chapter04
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • chapter04/aboutlfs.xml

    rec0a37e6 r69993f4  
    2828processes the command line.</para>
    2929
    30 <para>Don't forget to check that <quote>$LFS</quote> is set whenever
     30<para>Do not forget to check that <quote>$LFS</quote> is set whenever
    3131you leave and reenter the current working environment (as when doing a
    3232<quote>su</quote> to <emphasis>root</emphasis> or another user).</para>
  • chapter04/aboutsbus.xml

    rec0a37e6 r69993f4  
    88<?dbhtml filename="aboutsbus.html"?>
    99
    10 <para>Most people would like to know beforehand approximately how long
     10<para>Many people would like to know beforehand approximately how long
    1111it takes to compile and install each package. Because Linux From
    1212Scratch can be built on many different systems, it is impossible to
     
    1414take approximately 20 minutes on the fastest systems, but could take
    1515up to three days on slower systems! Instead of providing actual times,
    16 the <emphasis>Static Binutils Unit</emphasis> (SBU) measure will be
     16the Static Binutils Unit (SBU) measure will be
    1717used instead.</para>
    1818
    19 <para>The SBU measure works like this?the first package to be compiled
     19<para>The SBU measure works as follows. The first package to be compiled
    2020from this book is the statically-linked Binutils in <xref
    2121linkend="chapter-temporary-tools"/>.  The time it takes to compile
     
    2828install the static Binutils, it will take
    2929<emphasis>approximately</emphasis> 45 minutes to build this example
    30 package. Fortunately, most build times are much shorter than the one
     30package. Fortunately, most build times are shorter than the one
    3131for Binutils.</para>
    3232
    33 <para>Please note that if the system compiler on the host is GCC-2 based, the
     33<para>Please note that if the system compiler on the host is gcc-2.x based, the
    3434SBUs listed may be somewhat understated. This is because the SBU is
    3535based on the very first package, compiled with the old GCC, while the
    3636rest of the system is compiled with the newer GCC-&gcc-version; (which is
    3737known to be approximately 30 percent slower). SBUs are also not
    38 highly accurate for SMP-based machines.</para>
     38highly accurate for Symmetric Multi-Processor (SMP)-based machines.</para>
    3939
    4040<para>To view actual timings for specific machines, we recommend
    4141<ulink url="&lfs-root;~bdubbs/"/>.</para>
    4242
    43 <para>In general, SBUs are inaccurate because they depend on many
    44 factors, not just the GCC version. The only reason they are provided
    45 is to give some kind of indication of how long it might take to
    46 install a package, but the numbers can be off by as much as dozens of
     43<para>In general, SBUs are not very accurate because they depend on many
     44factors, not just the GCC version. They are provided
     45here to give an estimate of how long it might take to
     46install a package, but the numbers can vary by as much as dozens of
    4747minutes in some cases.</para>
    4848
  • chapter04/abouttestsuites.xml

    rec0a37e6 r69993f4  
    99
    1010<para>Most packages provide a test suite. Running the test suite for a
    11 newly built package is a good idea because it can provide a ?sanity
    12 check? indicating that everything compiled correctly. A test suite
     11newly built package is a good idea because it can provide a <quote>sanity
     12check</quote> indicating that everything compiled correctly. A test suite
    1313that passes its set of checks usually proves that the package is
    1414functioning as the developer intended. It does not, however, guarantee
     
    1616
    1717<para>Some test suites are more important than others. For example,
    18 the test suites for the core toolchain packages?GCC, Binutils, and
    19 Glibc?are of the utmost importance due to their central role in a
     18the test suites for the core toolchain packages&mdash;GCC, Binutils, and
     19Glibc&mdash;are of the utmost importance due to their central role in a
    2020properly functioning system. The test suites for GCC and Glibc can
    2121take a very long time to complete, especially on slower hardware, but
     
    4444<para>Sometimes package test suites will give false failures. Consult
    4545the LFS Wiki at <ulink url="&wiki-root;"/> to verify that these
    46 failures are normal. This site is valid for all tests throughout this
     46failures are expected. This site is valid for all tests throughout this
    4747book.</para>
    4848
  • chapter04/addinguser.xml

    rec0a37e6 r69993f4  
    55]>
    66<sect1 id="ch-tools-addinguser">
    7 <title>Adding the lfs User</title>
     7<title>Adding the LFS User</title>
    88<?dbhtml filename="addinguser.html"?>
    99
     
    3333<varlistentry>
    3434<term><parameter>-g lfs</parameter></term>
    35 <listitem><para>This adds user <emphasis>lfs</emphasis> to group
     35<listitem><para>This option adds user <emphasis>lfs</emphasis> to group
    3636<emphasis>lfs</emphasis></para></listitem>
    3737</varlistentry>
     
    5353<varlistentry>
    5454<term><parameter>lfs</parameter></term>
    55 <listitem><para>The actual name for the created group and
     55<listitem><para>This is the actual name for the created group and
    5656user</para></listitem>
    5757</varlistentry>
     
    6060<para>To log in as <emphasis>lfs</emphasis> (as opposed to switching
    6161to user <emphasis>lfs</emphasis> when
    62 logged in as <emphasis>root</emphasis> -- which does not require the
     62logged in as <emphasis>root</emphasis>, which does not require the
    6363<emphasis>lfs</emphasis> user to have a
    64 password in that case), give <emphasis>lfs</emphasis> a password:</para>
     64password), give <emphasis>lfs</emphasis> a password:</para>
    6565
    6666<screen><userinput>passwd lfs</userinput></screen>
     
    7373
    7474<para>If a separate working directory was created as suggested, give
    75 user lfs ownership of this directory too:</para>
     75user lfs ownership of this directory:</para>
    7676
    7777<screen><userinput>chown lfs $LFS/sources</userinput></screen>
  • chapter04/creatingtoolsdir.xml

    rec0a37e6 r69993f4  
    1717also prevents these programs from ending up in the host production
    1818directories (easy to do by accident in <xref
    19 linkend="chapter-temporary-tools"/>), which could be a very bad
    20 thing.</para>
     19linkend="chapter-temporary-tools"/>).</para>
    2120
    2221<para>Create the required directory by running the following as
  • chapter04/settingenviron.xml

    rec0a37e6 r69993f4  
    55]>
    66<sect1 id="ch-tools-settingenviron">
    7 <title>Setting up the environment</title>
     7<title>Setting Up the Environment</title>
    88<?dbhtml filename="settingenvironment.html"?>
    99
     
    1717EOF</userinput></screen>
    1818
    19 <para>Normally when logged on as user <emphasis>lfs</emphasis>, the
    20 initial shell is a <emphasis>login</emphasis> shell which reads the
    21 <filename>/etc/profile</filename> of your host (probably containing
     19<para>When logged on as user <emphasis>lfs</emphasis>, the
     20initial shell is usually a <emphasis>login</emphasis> shell which reads the
     21<filename>/etc/profile</filename> of the host (probably containing
    2222some settings and environment variables) and then
    2323<filename>.bash_profile</filename>. The <command>exec env
     
    2929potentially hazardous environment variables from the host system leak
    3030into the build environment. The technique used here achieves the goal
    31 of enforcing a clean environment.</para>
     31of ensuring a clean environment.</para>
    3232
    3333<para>The new instance of the shell is a <emphasis>non-login</emphasis>
     
    4848<para>The <command>set +h</command> command turns off
    4949<command>bash</command>'s hash function. Hashing is
    50 ordinarily a useful feature -- bash uses a hash table to remember the
     50ordinarily a useful feature&mdash;bash uses a hash table to remember the
    5151full pathnames of executable files to avoid searching the PATH time
    52 and time again to find the same executable. However, the new tools
     52and again to find the same executable. However, the new tools
    5353should be used as soon as they are installed. By switching off the
    5454hash function, the shell will always search the PATH when a program is
    55 requested to be run. As such, the shell will find our newly compiled
     55to be run. As such, the shell will find the newly compiled
    5656tools in <filename class="directory">$LFS/tools</filename> as soon as
    5757they are available without remembering a previous version of the same
    58 program (name wise) in a different location.</para>
     58program in a different location.</para>
    5959
    6060<para>Setting the user file-creation mask (umask) to 022 ensures that newly
     
    7373<quote>POSIX</quote> or <quote>C</quote> (during this chapter) may
    7474cause issues if you exit the chroot environment and wish to return
    75 later. By setting <emphasis>LC_ALL</emphasis> to <quote>POSIX</quote>
    76 or <quote>C</quote> (the two are equivalent), we ensure that
     75later. Setting <emphasis>LC_ALL</emphasis> to <quote>POSIX</quote>
     76or <quote>C</quote> (the two are equivalent) ensures that
    7777everything will work as expected in the chroot environment.</para>
    7878
     
    8080ahead of the standard PATH, all the programs installed in <xref
    8181linkend="chapter-temporary-tools"/> are picked up by the shell
    82 imemdiately after their installation. This coupled with the fact that
    83 hashing has been turned off, there is no risk that old programs from
     82immediately after their installation. This, combined with turning off
     83hashing, limits the risk that old programs from
    8484the host are being used when they should not be used any
    8585longer.</para>
Note: See TracChangeset for help on using the changeset viewer.