Changeset 574b0ea


Ignore:
Timestamp:
05/30/2004 01:41:04 PM (20 years ago)
Author:
Manuel Canales Esparcia <manuel@…>
Branches:
10.0, 10.0-rc1, 10.1, 10.1-rc1, 11.0, 11.0-rc1, 11.0-rc2, 11.0-rc3, 11.1, 11.1-rc1, 11.2, 11.2-rc1, 11.3, 11.3-rc1, 12.0, 12.0-rc1, 12.1, 12.1-rc1, 6.0, 6.1, 6.1.1, 6.3, 6.4, 6.5, 6.6, 6.7, 6.8, 7.0, 7.1, 7.2, 7.3, 7.4, 7.5, 7.5-systemd, 7.6, 7.6-systemd, 7.7, 7.7-systemd, 7.8, 7.8-systemd, 7.9, 7.9-systemd, 8.0, 8.1, 8.2, 8.3, 8.4, 9.0, 9.1, arm, bdubbs/gcc13, ml-11.0, multilib, renodr/libudev-from-systemd, s6-init, trunk, xry111/arm64, xry111/arm64-12.0, xry111/clfs-ng, xry111/lfs-next, xry111/loongarch, xry111/loongarch-12.0, xry111/loongarch-12.1, xry111/mips64el, xry111/pip3, xry111/rust-wip-20221008, xry111/update-glibc
Children:
07f719a
Parents:
b711e1d
Message:

Tagging corrections in chapters 5.

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

Files:
23 edited

Legend:

Unmodified
Added
Removed
  • chapter05/adjusting.xml

    rb711e1d r574b0ea  
    2121
    2222<para>From this point onwards everything will link <emphasis>only</emphasis>
    23 against the libraries in <filename>/tools/lib</filename>.</para>
     23against the libraries in <filename class="directory">/tools/lib</filename>.</para>
    2424
    2525<note><para>If you somehow missed the earlier warning to retain the Binutils
     
    7878in dynamic linker name):</para>
    7979
    80 <blockquote><screen>[Requesting program interpreter: /tools/lib/ld-linux.so.2]</screen></blockquote>
     80<blockquote><screen><computeroutput>[Requesting program interpreter: /tools/lib/ld-linux.so.2]</computeroutput></screen></blockquote>
    8181
    8282<para>Note especially that <filename class="directory">/tools/lib</filename>
  • chapter05/binutils-pass1.xml

    rb711e1d r574b0ea  
    3333
    3434<para>This package is known to behave badly when you change its default
    35 optimization flags (including the <emphasis>-march</emphasis> and
    36 <emphasis>-mcpu</emphasis> options). Therefore, if you have defined any
     35optimization flags (including the <parameter>-march</parameter> and
     36<parameter>-mcpu</parameter> options). Therefore, if you have defined any
    3737environment variables that override default optimizations, such as CFLAGS and
    3838CXXFLAGS, we recommend un-setting them when building Binutils.</para>
     
    5959<variablelist>
    6060<varlistentry>
    61 <term><userinput>--prefix=/tools</userinput></term>
     61<term><parameter>--prefix=/tools</parameter></term>
    6262<listitem><para>This tells the configure script to prepare to install the Binutils
    63 programs in the <filename>/tools</filename> directory.</para></listitem>
     63programs in the <filename class="directory">/tools</filename> directory.</para></listitem>
    6464</varlistentry>
    6565
    6666<varlistentry>
    67 <term><userinput>--disable-nls</userinput></term>
     67<term><parameter>--disable-nls</parameter></term>
    6868<listitem><para>This disables internationalization (a word often shortened to
    6969i18n). We don't need this for our static programs and <emphasis>nls</emphasis>
     
    8181<variablelist>
    8282<varlistentry>
    83 <term><userinput>configure-host</userinput></term>
     83<term><parameter>configure-host</parameter></term>
    8484<listitem><para>This forces all the subdirectories to be configured immediately.
    8585A statically linked build will fail without it. We therefore use this option to work
     
    8888
    8989<varlistentry>
    90 <term><userinput>LDFLAGS="-all-static"</userinput></term>
     90<term><parameter>LDFLAGS="-all-static"</parameter></term>
    9191<listitem><para>This tells the linker that all the Binutils programs should be
    92 linked statically. However, strictly speaking, <emphasis>"-all-static"</emphasis>
     92linked statically. However, strictly speaking, <parameter>"-all-static"</parameter>
    9393is passed to the <command>libtool</command> program, which then passes
    94 <emphasis>"-static"</emphasis> to the linker.</para></listitem>
     94<parameter>"-static"</parameter> to the linker.</para></listitem>
    9595</varlistentry>
    9696</variablelist>
     
    115115<variablelist>
    116116<varlistentry>
    117 <term><userinput>-C ld clean</userinput></term>
     117<term><parameter>-C ld clean</parameter></term>
    118118<listitem><para>This tells the make program to remove all the compiled files
    119119in the <filename class="directory">ld</filename> subdirectory.</para></listitem>
     
    121121
    122122<varlistentry>
    123 <term><userinput>-C ld LDFLAGS="-all-static"
    124 LIB_PATH=/tools/lib</userinput></term>
     123<term><parameter>-C ld LDFLAGS="-all-static"
     124LIB_PATH=/tools/lib</parameter></term>
    125125<listitem><para>This option rebuilds everything in the
    126126<filename class="directory">ld</filename> subdirectory. Specifying the LIB_PATH
  • chapter05/binutils-pass2.xml

    rb711e1d r574b0ea  
    3939<variablelist>
    4040<varlistentry>
    41 <term><userinput>--with-lib-path=/tools/lib</userinput></term>
     41<term><parameter>--with-lib-path=/tools/lib</parameter></term>
    4242<listitem><para>This tells the configure script to specify the library search path
    43 during the compilation of Binutils, resulting in <emphasis>/tools/lib</emphasis>
     43during the compilation of Binutils, resulting in <parameter>/tools/lib</parameter>
    4444to be passed to the linker. This prevents the linker from searching through library
    4545directories on the host.</para></listitem>
     
    6464exceptions to this rule are as follows:</para>
    6565
    66 <screen>* 5 FAIL (unexpected failure) for visibility
     66<screen><computeroutput>* 5 FAIL (unexpected failure) for visibility
    6767* 1 FAIL for selective4
    68 * 1 FAIL for selective5</screen>
     68* 1 FAIL for selective5</computeroutput></screen>
    6969
    7070<!--
     
    7575to spot. The output shown will contain something like:</para>
    7676
    77 <blockquote><screen>make[1]: *** [check-binutils] Error 2</screen></blockquote>
     77<blockquote><screen><computeroutput>make[1]: *** [check-binutils] Error 2</computeroutput></screen></blockquote>
    7878
    7979-->
     
    8383<screen><userinput>make install</userinput></screen>
    8484
    85 <para>Now prepare the linker for the "Re-adjusting" phase in the next
     85<para>Now prepare the linker for the <quote>Re-adjusting</quote> phase in the next
    8686chapter:</para>
    8787
  • chapter05/coreutils.xml

    rb711e1d r574b0ea  
    3232<screen><userinput>DEFAULT_POSIX2_VERSION=199209 ./configure --prefix=/tools</userinput></screen>
    3333
    34 <para>This package has an issue when compiled against versions of glibc
     34<para>This package has an issue when compiled against versions of Glibc
    3535later than 2.3.2.  Some of the Coreutils utilities (such as
    3636(<command>head</command>, <command>tail</command> and <command>sort</command>)
     
    3939should be preserved until the many places where it is used can be
    4040updated.  Backwards compatibility is achieved by setting the
    41 DEFAULT_POSIX2_VERSION environment variable to &quot;199209&quot; in the above
    42 command.  If you don&apos;t want coreutils to be backwards compatible
     41DEFAULT_POSIX2_VERSION environment variable to <quote>199209</quote> in the above
     42command.  If you don't want coreutils to be backwards compatible
    4343with the traditional syntax, then simply omit setting the DEFAULT_POSIX2_VERSION
    44 environment variable.  Realise though, that doing so will mean you&apos;ll have
     44environment variable.  Realise though, that doing so will mean you'll have
    4545to deal with the consequences yourself: patch the many packages that still use
    4646the old syntax.  We therefore recommend using the instructions exactly as given
     
    5353<para>(If you insist on testing the results, then issue:
    5454<userinput>make RUN_EXPENSIVE_TESTS=yes check</userinput>. The
    55 <emphasis>RUN_EXPENSIVE_TESTS=yes</emphasis> parameter tells the test suite to
     55<parameter>RUN_EXPENSIVE_TESTS=yes</parameter> parameter tells the test suite to
    5656run several additional tests that are considered relatively expensive on some
    5757platforms but generally are not a problem on Linux.)</para>
  • chapter05/dejagnu.xml

    rb711e1d r574b0ea  
    5454<indexterm zone="ch-tools-dejagnu runtest"><primary sortas="b-runtest">runtest</primary></indexterm>
    5555<para>is the wrapper script that finds the proper
    56 expect shell and then runs DejaGnu.</para>
     56<command>expect</command> shell and then runs DejaGnu.</para>
    5757</listitem>
    5858</varlistentry>
  • chapter05/expect.xml

    rb711e1d r574b0ea  
    4343<variablelist>
    4444<varlistentry>
    45 <term><userinput>--with-tcl=/tools/lib</userinput></term>
     45<term><parameter>--with-tcl=/tools/lib</parameter></term>
    4646<listitem><para>This ensures that
    4747the configure script finds the Tcl installation in our temporary tools location.
     
    5151
    5252<varlistentry>
    53 <term><userinput>--with-x=no</userinput></term>
     53<term><parameter>--with-x=no</parameter></term>
    5454<listitem><para>This tells the configure
    5555script not to search for Tk (the Tcl GUI component) or the X Window System
     
    7676<variablelist>
    7777<varlistentry>
    78 <term><userinput>SCRIPTS=""</userinput></term>
     78<term><parameter>SCRIPTS=""</parameter></term>
    7979<listitem><para>This prevents installation
    8080of the supplementary expect scripts which are not needed.</para></listitem>
  • chapter05/gcc-pass1.xml

    rb711e1d r574b0ea  
    3232
    3333<para>This package is known to behave badly when you change its default
    34 optimization flags (including the <emphasis>-march</emphasis> and
    35 <emphasis>-mcpu</emphasis> options). Therefore, if you have defined any
     34optimization flags (including the <parameter>-march</parameter> and
     35<parameter>-mcpu</parameter> options). Therefore, if you have defined any
    3636environment variables that override default optimizations, such as CFLAGS and
    3737CXXFLAGS, we recommend un-setting them when building GCC.</para>
     
    5353<variablelist>
    5454<varlistentry>
    55 <term><userinput>--with-local-prefix=/tools</userinput></term>
    56 <listitem><para>The purpose of this switch is to remove <filename>/usr/local/include</filename>
     55<term><parameter>--with-local-prefix=/tools</parameter></term>
     56<listitem><para>The purpose of this switch is to remove <filename class="directory">/usr/local/include</filename>
    5757from <command>gcc</command>'s include search path. This is not absolutely
    5858essential; however, we want to try to minimize the influence of the host
     
    6161
    6262<varlistentry>
    63 <term><userinput>--enable-shared</userinput></term>
     63<term><parameter>--enable-shared</parameter></term>
    6464<listitem><para>This switch may
    6565seem counter-intuitive at first. But using it allows the building of
     
    6767having <filename>libgcc_eh.a</filename> available ensures that the configure
    6868script for Glibc (the next package we compile) produces the proper results.
    69 Note that the <command>gcc</command> binaries will still be linked
    70 statically, as this is controlled by the <emphasis>-static</emphasis>
     69Note that the GCC binaries will still be linked
     70statically, as this is controlled by the <parameter>-static</parameter>
    7171value of BOOT_LDFLAGS in the next step.</para></listitem>
    7272</varlistentry>
    7373
    7474<varlistentry>
    75 <term><userinput>--enable-languages=c</userinput></term>
     75<term><parameter>--enable-languages=c</parameter></term>
    7676<listitem><para>This option
    7777ensures that only the C compiler is built. The option is only needed when you
     
    8888<variablelist>
    8989<varlistentry>
    90 <term><userinput>BOOT_LDFLAGS="-static"</userinput></term>
     90<term><parameter>BOOT_LDFLAGS="-static"</parameter></term>
    9191<listitem><para>This tells GCC to link its programs statically.</para></listitem>
    9292</varlistentry>
    9393
    9494<varlistentry>
    95 <term><userinput>bootstrap</userinput></term>
     95<term><parameter>bootstrap</parameter></term>
    9696<listitem><para>This target doesn't just
    9797compile GCC, but compiles it several times. It uses the programs compiled in
  • chapter05/gcc-pass2.xml

    rb711e1d r574b0ea  
    3131highly dependent on properly functioning pseudo terminals (PTYs) which are
    3232provided by your host. These days, PTYs are most commonly implemented via the
    33 <emphasis>devpts</emphasis> file system. You can quickly check if your host
     33<systemitem class="filesystem">devpts</systemitem> file system. You can quickly check if your host
    3434system is set up correctly in this regard by performing a simple test:</para>
    3535
     
    3838<para>The response might be:</para>
    3939
    40 <blockquote><screen>The system has no more ptys.  Ask your system administrator to create more.</screen></blockquote>
     40<blockquote><screen><computeroutput>The system has no more ptys.  Ask your system administrator to create more.</computeroutput></screen></blockquote>
    4141
    4242<para>If you receive the above message, your host doesn't have its PTYs set up
     
    4949to unpack both the core and the g++ tarballs (and testsuite too, if you want to
    5050run the tests). Unpacking them in your working directory, they will all unfold
    51 into a single <filename>gcc-&gcc-version;/</filename> subdirectory.</para>
     51into a single <filename class="directory">gcc-&gcc-version;/</filename> subdirectory.</para>
    5252
    5353<para>First correct a problem and make an essential adjustment:</para>
     
    5656patch -Np1 -i ../gcc-&gcc-short-version;-specs-1.patch</userinput></screen>
    5757
    58 <para>The first patch disables the GCC <quote>fixincludes</quote> script. We
     58<para>The first patch disables the GCC <command>fixincludes</command> script. We
    5959mentioned this briefly earlier, but a slightly more in-depth explanation of
    6060the fixincludes process is warranted here. Under normal circumstances, the GCC
    61 fixincludes script scans your system for header files that need to be fixed. It
     61<command>fixincludes</command> script scans your system for header files that need to be fixed. It
    6262might find that some Glibc header files on your host system need to be fixed,
    6363fix them and put them in the GCC private include directory. Then, later on in
     
    9999<variablelist>
    100100<varlistentry>
    101 <term><userinput>--enable-clocale=gnu</userinput></term>
     101<term><parameter>--enable-clocale=gnu</parameter></term>
    102102<listitem><para>This option
    103103ensures the correct locale model is selected for the C++ libraries under all
     
    110110
    111111<varlistentry>
    112 <term><userinput>--enable-threads=posix</userinput></term>
     112<term><parameter>--enable-threads=posix</parameter></term>
    113113<listitem><para>This enables
    114114C++ exception handling for multi-threaded code.</para></listitem>
     
    116116
    117117<varlistentry>
    118 <term><userinput>--enable-__cxa_atexit</userinput></term>
     118<term><parameter>--enable-__cxa_atexit</parameter></term>
    119119<listitem><para>This option
    120120allows use of __cxa_atexit, rather than atexit, to register C++ destructors for
     
    126126
    127127<varlistentry>
    128 <term><userinput>--enable-languages=c,c++</userinput></term>
     128<term><parameter>--enable-languages=c,c++</parameter></term>
    129129<listitem><para>This option
    130130ensures that both the C and C++ compilers are built.</para></listitem>
     
    132132
    133133<varlistentry>
    134 <term><userinput>--disable-libstdcxx-pch</userinput></term>
     134<term><parameter>--disable-libstdcxx-pch</parameter></term>
    135135<listitem><para>Don't build the
    136136PCH (pre-compiled header) for libstdc++. It takes up a ton of space, and we
     
    143143<screen><userinput>make</userinput></screen>
    144144
    145 <para>There is no need to use the <emphasis>bootstrap</emphasis> target now,
     145<para>There is no need to use the <parameter>bootstrap</parameter> target now,
    146146as the compiler we're using to compile this GCC was built from the exact same
    147147version of the GCC sources we used earlier.</para>
     
    154154<screen><userinput>make -k check</userinput></screen>
    155155
    156 <para>The <emphasis>-k</emphasis> flag is used to make the test suite run
     156<para>The <parameter>-k</parameter> flag is used to make the test suite run
    157157through to completion and not stop at the first failure. The GCC test suite is
    158158very comprehensive and is almost guaranteed to generate a few failures. To get
  • chapter05/gettext.xml

    rb711e1d r574b0ea  
    3737<variablelist>
    3838<varlistentry>
    39 <term><userinput>--disable-libasprintf</userinput></term>
     39<term><parameter>--disable-libasprintf</parameter></term>
    4040<listitem><para>This flag tells
    41 Gettext that we don't want its asprintf library.  Nothing in Chapter 5 or 6
    42 requires this, and gettext gets rebuilt later, so we exclude it to save
     41Gettext that we don't want its asprintf library.  Nothing in this chapter or the next
     42requires this, and Gettext gets rebuilt later, so we exclude it to save
    4343time/space.</para></listitem>
    4444</varlistentry>
    4545
    4646<varlistentry>
    47 <term><userinput>--disable-csharp</userinput></term>
     47<term><parameter>--disable-csharp</parameter></term>
    4848<listitem><para>Gettext has a nasty
    4949habit of searching for a C# compiler on the host, and building bindings for it.
  • chapter05/glibc.xml

    rb711e1d r574b0ea  
    2929
    3030<para>This package is known to behave badly when you change its default
    31 optimization flags (including the <emphasis>-march</emphasis> and
    32 <emphasis>-mcpu</emphasis> options). Therefore, if you have defined any
     31optimization flags (including the <parameter>-march</parameter> and
     32<parameter>-mcpu</parameter> options). Therefore, if you have defined any
    3333environment variables that override default optimizations, such as CFLAGS and
    3434CXXFLAGS, we recommend un-setting them when building Glibc.</para>
     
    5454<variablelist>
    5555<varlistentry>
    56 <term><userinput>--disable-profile</userinput></term>
     56<term><parameter>--disable-profile</parameter></term>
    5757<listitem><para>This builds the
    5858libraries without profiling information. Omit this option if you plan to do
     
    6161
    6262<varlistentry>
    63 <term><userinput>--enable-add-ons=nptl</userinput></term>
     63<term><parameter>--enable-add-ons=nptl</parameter></term>
    6464<listitem><para>This tells Glibc to use the NPTL add-on as its threading
    6565library.</para></listitem>
     
    6767
    6868<varlistentry>
    69 <term><userinput>--with-tls</userinput></term>
     69<term><parameter>--with-tls</parameter></term>
    7070<listitem><para>This tells Glibc to include support for TLS (thread-local storage).
    7171This is required for NPTL to work. </para></listitem>
     
    7373
    7474<varlistentry>
    75 <term><userinput>--with-binutils=/tools/bin</userinput></term>
     75<term><parameter>--with-binutils=/tools/bin</parameter></term>
    7676<listitem><para>Strictly speaking this switch is not required. But it does ensure
    7777nothing can go wrong with regard to what Binutils programs get used during the
     
    8080
    8181<varlistentry>
    82 <term><userinput>--without-gd</userinput></term>
     82<term><parameter>--without-gd</parameter></term>
    8383<listitem><para>This prevents the build of the <command>memusagestat</command>
    8484program, which strangely enough insists on linking against the host's libraries
     
    8787
    8888<varlistentry>
    89 <term><userinput>--without-cvs</userinput></term>
     89<term><parameter>--without-cvs</parameter></term>
    9090<listitem><para>This is meant to prevent
    9191the Makefiles from attempting automatic CVS checkouts when using a CVS
     
    9696
    9797<varlistentry>
    98 <term><userinput>--with-headers=/tools/glibc-kernheaders</userinput></term>
     98<term><parameter>--with-headers=/tools/glibc-kernheaders</parameter></term>
    9999<listitem><para>This tells Glibc to compile against the <quote>raw</quote>
    100100kernel headers, so that it knows exactly what features the kernel has, and can
     
    105105<para>During this stage you might see the following warning:</para>
    106106
    107 <blockquote><screen>configure: WARNING:
     107<blockquote><screen><computeroutput>configure: WARNING:
    108108*** These auxiliary programs are missing or incompatible versions: msgfmt
    109109*** some features will be disabled.
    110 *** Check the INSTALL file for required versions.</screen></blockquote>
     110*** Check the INSTALL file for required versions.</computeroutput></screen></blockquote>
    111111
    112112<para>The missing or incompatible <command>msgfmt</command> program is
     
    143143
    144144<listitem><para>The <emphasis>atime</emphasis> test sometimes fails when the
    145 LFS partition is mounted with the <emphasis>noatime</emphasis> option, or due
     145LFS partition is mounted with the <parameter>noatime</parameter> option, or due
    146146to other file system quirks.</para></listitem>
    147147
    148148<listitem><para>The <emphasis>shm</emphasis> test might fail when the host
    149 system is running the devfs file system but doesn't have the tmpfs file system
    150 mounted at <filename>/dev/shm</filename> due to lack of support for tmpfs in
     149system is running the devfs file system but doesn't have the <systemitem class="filesystem">tmpfs</systemitem> file system
     150mounted at <filename class="directory">/dev/shm</filename> due to lack of support for tmpfs in
    151151the kernel.</para></listitem>
    152152
  • chapter05/grep.xml

    rb711e1d r574b0ea  
    3737<variablelist>
    3838<varlistentry>
    39 <term><userinput>--disable-perl-regexp</userinput></term>
     39<term><parameter>--disable-perl-regexp</parameter></term>
    4040<listitem><para>This makes sure that <command>grep</command> does not
    4141get linked against a PCRE library that may be present on the host and would not be
     
    4444
    4545<varlistentry>
    46 <term><userinput>--with-included-regex</userinput></term>
     46<term><parameter>--with-included-regex</parameter></term>
    4747<listitem><para>This ensures that
    4848Grep uses its internal regular expression code. Without this switch, Grep will
  • chapter05/hostreqs.xml

    rb711e1d r574b0ea  
    1111running at <emphasis>least</emphasis> a 2.6.2 kernel. The reasons for this high
    1212requirement is the use of NPTL, but more importantly the use of udev. Udev
    13 creates devices dynamically by reading from the sysfs file system. Only very
     13creates devices dynamically by reading from the <systemitem class="filesystem">sysfs</systemitem> file system. Only very
    1414recently has support for this file system been implemented in most of the kernel
    1515drivers, however. We must be sure that all the critical system devices get
  • chapter05/kernel-headers.xml

    rb711e1d r574b0ea  
    4242<screen><userinput>make include/linux/version.h</userinput></screen>
    4343
    44 <para>Create the platform-specific <filename>include/asm</filename>
     44<para>Create the platform-specific <filename class="symlink">include/asm</filename>
    4545symlink:</para>
    4646
  • chapter05/linux-libc-headers.xml

    rb711e1d r574b0ea  
    2626
    2727<para>For years it has been common practice to use so-called <quote>raw</quote>
    28 kernel headers (straight from a kernel tarball) in /usr/include, but over the
     28kernel headers (straight from a kernel tarball) in <filename class="directory">/usr/include</filename>, but over the
    2929last few years, the kernel developers have taken a strong stance that such
    3030things should not be done.  Thus was born the linux-libc-headers project,
  • chapter05/ncurses.xml

    rb711e1d r574b0ea  
    3737<variablelist>
    3838<varlistentry>
    39 <term><userinput>--without-ada</userinput></term>
     39<term><parameter>--without-ada</parameter></term>
    4040<listitem><para>This tells Ncurses not
    4141to build its Ada bindings, even if an Ada compiler is installed on the host.
     
    4545
    4646<varlistentry>
    47 <term><userinput>--enable-overwrite</userinput></term>
     47<term><parameter>--enable-overwrite</parameter></term>
    4848<listitem><para>This tells Ncurses to install its header files into
    4949<filename class="directory">/tools/include</filename> instead of
  • chapter05/patch.xml

    rb711e1d r574b0ea  
    2929
    3030<para>Prepare Patch for compilation (the preprocessor flag
    31 <emphasis>-D_GNU_SOURCE</emphasis> is only needed on the PowerPC platform, on
     31<parameter>-D_GNU_SOURCE</parameter> is only needed on the PowerPC platform, on
    3232other architectures you can leave it out):</para>
    3333
  • chapter05/perl.xml

    rb711e1d r574b0ea  
    4141<variablelist>
    4242<varlistentry>
    43 <term><userinput>-Dstatic_ext='IO Fcntl POSIX'</userinput></term>
     43<term><parameter>-Dstatic_ext='IO Fcntl POSIX'</parameter></term>
    4444<listitem><para>This tells
    4545Perl to build the minimum set of static extensions needed for installing and
  • chapter05/stripping.xml

    rb711e1d r574b0ea  
    2121
    2222<para>Take care <emphasis>not</emphasis> to use
    23 <emphasis>--strip-unneeded</emphasis> on the libraries -- the static ones
     23<parameter>--strip-unneeded</parameter> on the libraries -- the static ones
    2424would be destroyed and you would have to build the three toolchain packages
    2525all over again.</para>
  • chapter05/tcl.xml

    rb711e1d r574b0ea  
    5151to experience failures under certain host conditions that are not fully
    5252understood. Therefore, test suite failures here are not surprising, and are not
    53 considered critical. The <emphasis>TZ=UTC</emphasis> parameter sets the time
     53considered critical. The <parameter>TZ=UTC</parameter> parameter sets the time
    5454zone to Coordinated Universal Time (UTC) also known as Greenwich Mean Time
    5555(GMT), but only for the duration of the test suite run. This ensures the clock
     
    6262
    6363<warning><para><emphasis>Do not remove</emphasis> the
    64 <filename>tcl&tcl-version;</filename> source directory yet, as the next package
     64<filename class="directory">tcl&tcl-version;</filename> source directory yet, as the next package
    6565will need its internal headers.</para></warning>
    6666
  • chapter05/toolchaintechnotes.xml

    rb711e1d r574b0ea  
    2828many folks the target triplet will probably be
    2929<emphasis>i686-pc-linux-gnu</emphasis>. A simple way to determine your target
    30 triplet is to run the <filename>config.guess</filename> script that comes with
     30triplet is to run the <command>config.guess</command> script that comes with
    3131the source for many packages. Unpack the Binutils sources and run the script:
    3232<userinput>./config.guess</userinput> and note the output.</para>
     
    3535<emphasis>dynamic linker</emphasis>, often also referred to as the
    3636<emphasis>dynamic loader</emphasis>, not to be confused with the standard linker
    37 <emphasis>ld</emphasis> that is part of Binutils. The dynamic linker is provided
     37<command>ld</command> that is part of Binutils. The dynamic linker is provided
    3838by Glibc and has the job of finding and loading the shared libraries needed by a
    3939program, preparing the program to run and then running it. For most folks the
    40 name of the dynamic linker will be <emphasis>ld-linux.so.2</emphasis>. On
     40name of the dynamic linker will be <filename>ld-linux.so.2</filename>. On
    4141platforms that are less prevalent, the name might be
    42 <emphasis>ld.so.1</emphasis> and newer 64 bit platforms might even have
     42<filename>ld.so.1</filename> and newer 64 bit platforms might even have
    4343something completely different. You should be able to determine the name
    4444of your platform's dynamic linker by looking in the
     
    6464
    6565<listitem><para>Careful manipulation of <command>gcc</command>'s
    66 <emphasis>specs</emphasis> file to tell the compiler which target dynamic
     66<filename>specs</filename> file to tell the compiler which target dynamic
    6767linker will be used.</para></listitem>
    6868</itemizedlist>
     
    8282the tools in one location are hard linked to the other. An important facet of
    8383the linker is its library search order. Detailed information can be obtained
    84 from <command>ld</command> by passing it the <emphasis>--verbose</emphasis>
     84from <command>ld</command> by passing it the <parameter>--verbose</parameter>
    8585flag. For example: <command>ld --verbose | grep SEARCH</command> will
    8686show you the current search paths and their order. You can see what files are
    8787actually linked by <command>ld</command> by compiling a dummy program and
    88 passing the <emphasis>--verbose</emphasis> switch to the linker. For example:
    89 <command>gcc dummy.c -Wl,--verbose 2&gt;&amp;1 | grep succeeded</command>
     88passing the <parameter>--verbose</parameter> switch to the linker. For example:
     89<userinput>gcc dummy.c -Wl,--verbose 2&gt;&amp;1 | grep succeeded</userinput>
    9090will show you all the files successfully opened during the linking.</para>
    9191
     
    9393<command>./configure</command> you'll see, for example:</para>
    9494
    95 <blockquote><screen>checking what assembler to use... /tools/i686-pc-linux-gnu/bin/as
    96 checking what linker to use... /tools/i686-pc-linux-gnu/bin/ld</screen></blockquote>
     95<blockquote><screen><computeroutput>checking what assembler to use... /tools/i686-pc-linux-gnu/bin/as
     96checking what linker to use... /tools/i686-pc-linux-gnu/bin/ld</computeroutput></screen></blockquote>
    9797
    9898<para>This is important for the reasons mentioned above. It also demonstrates
     
    101101itself, the same search paths are not necessarily used. You can find out which
    102102standard linker <command>gcc</command> will use by running:
    103 <command>gcc -print-prog-name=ld</command>.
     103<userinput>gcc -print-prog-name=ld</userinput>.
    104104Detailed information can be obtained from <command>gcc</command> by passing
    105 it the <emphasis>-v</emphasis> flag while compiling a dummy program. For
    106 example: <command>gcc -v dummy.c</command> will show you detailed
     105it the <parameter>-v</parameter> flag while compiling a dummy program. For
     106example: <userinput>gcc -v dummy.c</userinput> will show you detailed
    107107information about the preprocessor, compilation and assembly stages, including
    108108<command>gcc</command>'s include search paths and their order.</para>
     
    118118<filename class="directory">glibc-build</filename> directory for all the
    119119important details. You'll note some interesting items like the use of
    120 <emphasis>CC="gcc -B/tools/bin/"</emphasis> to control which binary tools are
    121 used, and also the use of the <emphasis>-nostdinc</emphasis> and
    122 <emphasis>-isystem</emphasis> flags to control the compiler's include search
     120<parameter>CC="gcc -B/tools/bin/"</parameter> to control which binary tools are
     121used, and also the use of the <parameter>-nostdinc</parameter> and
     122<parameter>-isystem</parameter> flags to control the compiler's include search
    123123path. These items help to highlight an important aspect of the Glibc package:
    124124it is very self-sufficient in terms of its build machinery and generally does
     
    126126
    127127<para>After the Glibc installation, we make some adjustments to ensure that
    128 searching and linking take place only within our <filename>/tools</filename>
     128searching and linking take place only within our <filename class="directory">/tools</filename>
    129129prefix. We install an adjusted <command>ld</command>, which has a hard-wired
    130130search path limited to <filename class="directory">/tools/lib</filename>. Then
     
    134134hard-wired path to a dynamic linker is embedded into every ELF shared
    135135executable. You can inspect this by running:
    136 <command>readelf -l &lt;name of binary&gt; | grep interpreter</command>.
     136<userinput>readelf -l &lt;name of binary&gt; | grep interpreter</userinput>.
    137137By amending <command>gcc</command>'s specs file, we are ensuring that every
    138138program compiled from here through the end of this chapter will use our new
     
    146146
    147147<para>During the second pass of Binutils, we are able to utilize the
    148 <emphasis>--with-lib-path</emphasis> configure switch to control
     148<parameter>--with-lib-path</parameter> configure switch to control
    149149<command>ld</command>'s library search path. From this point onwards, the
    150150core toolchain is self-contained and self-hosted. The remainder of the
  • chapter05/udev.xml

    rb711e1d r574b0ea  
    3737by applying the following patch:</para>
    3838
    39 <screen><userinput>patch -Np1 -i ../udev-&udev-version;-config-2.patch
    40 </userinput></screen>
     39<screen><userinput>patch -Np1 -i ../udev-&udev-version;-config-2.patch</userinput></screen>
    4140
    4241<para>The udevstart program hardcodes the path to the udev program in itself,
  • chapter05/util-linux.xml

    rb711e1d r574b0ea  
    3434
    3535<para>Util-linux doesn't use the freshly installed headers and libraries
    36 from the /tools directory.  This is fixed by altering the configure
     36from the <filename class="directory">/tools</filename> directory.  This is fixed by altering the configure
    3737script:</para>
    3838
  • stylesheets/lfs.css

    rb711e1d r574b0ea  
    234234
    235235pre.screen {
     236  color: #000;
    236237  background-color: #e9e9e9;
    237238  border: 1px solid #050505;
Note: See TracChangeset for help on using the changeset viewer.