Changeset 9dfc02f


Ignore:
Timestamp:
05/03/2004 09:28:58 PM (20 years ago)
Author:
Zack Winkles <winkie@…>
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:
5f505ff, c8ba565
Parents:
411ceb8
Message:

Current BE-LFS (but w/ GCC 3.3.3) merged -> 6.0 branch

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

Files:
11 added
7 deleted
51 edited

Legend:

Unmodified
Added
Removed
  • Makefile

    r411ceb8 r9dfc02f  
    1 BASEDIR=~/lfs-book
     1BASEDIR=~/belfs-book
    22
    33lfs:
  • chapter01/changelog.xml

    r411ceb8 r9dfc02f  
    2222<listitem><para>autoconf-2.59</para></listitem>
    2323<listitem><para>automake-1.8.4</para></listitem>
     24<listitem><para>binutils-2.15.90.0.3</para></listitem>
     25<listitem><para>bison-1.875a</para></listitem>
    2426<listitem><para>coreutils-5.2.1</para></listitem>
    2527<listitem><para>e2fsprogs-1.35</para></listitem>
    2628<listitem><para>expect-5.41.0</para></listitem>
    2729<listitem><para>file-4.09</para></listitem>
     30<listitem><para>flex-2.5.31</para></listitem>
    2831<listitem><para>gcc-3.3.3</para></listitem>
    2932<listitem><para>gettext-0.14.1</para></listitem>
     33<listitem><para>glibc-2.3.4-20040408</para></listitem>
    3034<listitem><para>grub-0.94</para></listitem>
    3135<listitem><para>kbd-1.12</para></listitem>
     
    3337<listitem><para>lfs-bootscripts-2.0.4</para></listitem>
    3438<listitem><para>libtool-2.5.6</para></listitem>
    35 <listitem><para>linux-2.4.26</para></listitem>
     39<listitem><para>linux-2.6.5</para></listitem>
    3640<listitem><para>man-pages-1.66</para></listitem>
    37 <listitem><para>modutils-2.4.27</para></listitem>
    3841<listitem><para>ncurses-5.4</para></listitem>
    3942<listitem><para>perl-5.8.4</para></listitem>
     
    5154<listitem><para>Added:</para>
    5255<itemizedlist>
     56<listitem><para>flex-2.5.31-debian-fixes-2.patch</para></listitem>
    5357<listitem><para>iana-etc-1.00</para></listitem>
     58<listitem><para>inetutils-1.4.2-kernel-headers-1.patch</para></listitem>
    5459<listitem><para>inetutils-1.4.2-no_server_man_pages-1.patch</para></listitem>
    55 <listitem><para>make_devices-1.2</para></listitem>
    56 <listitem><para>mktemp-1.5 + mktemp-1.5-add-tempfile.patch</para></listitem>
     60<listitem><para>linux-libc-headers-2.6.5.1</para></listitem>
     61<listitem><para>mktemp-1.5</para></listitem>
     62<listitem><para>mktemp-1.5-add-tempfile-1.patch</para></listitem>
     63<listitem><para>module-init-tools-3.0</para></listitem>
     64<listitem><para>net-tools-1.60-kernel-headers-1.patch</para></listitem>
     65<listitem><para>sysklogd-1.4.1-kernel-headers-1.patch</para></listitem>
     66<listitem><para>udev-025</para></listitem>
     67<listitem><para>udev-025-config-1.patch</para></listitem>
     68<listitem><para>util-linux-2.12a-kernel-headers-1.patch</para></listitem>
    5769</itemizedlist>
    5870</listitem>
     
    6072<listitem><para>Removed:</para>
    6173<itemizedlist>
     74<listitem><para>bison-1.875-attribute.patch</para></listitem>
     75<listitem><para>ed-0.2</para></listitem>
     76<listitem><para>gcc-2.95.3</para></listitem>
    6277<listitem><para>gcc-3.3.1-suppress-libiberty.patch</para></listitem>
     78<listitem><para>kbd-1.12-more-programs-1.patch</para></listitem>
    6379<listitem><para>lfs-utils-0.5</para></listitem>
    6480<listitem><para>MAKEDEV-1.7</para></listitem>
    6581<listitem><para>man-1.5m2-manpath.patch</para></listitem>
    6682<listitem><para>man-1.5m2-pager.patch</para></listitem>
     83<listitem><para>modutils-2.4.25</para></listitem>
    6784<listitem><para>ncurses-5.3-etip-2.patch</para></listitem>
    6885<listitem><para>ncurses-5.3-vsscanf.patch</para></listitem>
    69 <listitem><para>perl-5.8.0-libc-3.patch</para></listitem>
     86<listitem><para>procinfo-18</para></listitem>
    7087<listitem><para>procps-3.1.11-locale-fix.patch</para></listitem>
    7188<listitem><para>shadow-4.0.3-newgrp-fix.patch</para></listitem>
     
    7390</itemizedlist>
    7491</listitem>
     92
     93<listitem><para>May 3rd, 2004 [winkie]: Merged BE-LFS content.</para></listitem>
    7594
    7695<listitem><para>May 2nd, 2004 [matt]: Quoted chroot commands in chapter 6 (bug
  • chapter01/chapter01.xml

    r411ceb8 r9dfc02f  
    1010
    1111<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="how.xml"/>
    12 
    13 
    1412<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="changelog.xml"/>
    15 
    16 
    1713<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="administrativa.xml"/>
    18 
    1914<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="askforhelp.xml"/>
    2015
  • chapter02/chapter02.xml

    r411ceb8 r9dfc02f  
    99<?dbhtml filename="chapter02.html"?>
    1010
    11 
    1211<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="introduction.xml"/>
    13 
    14 
    1512<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="creatingpartition.xml"/>
    16 
    17 
    1813<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="creatingfilesystem.xml"/>
    19 
    20 
    2114<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="mounting.xml"/>
    2215
    23 
    2416</chapter>
  • chapter03/chapter03.xml

    r411ceb8 r9dfc02f  
    99<?dbhtml filename="chapter03.html"?>
    1010
    11 
    1211<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="introduction.xml"/>
    13 
    14 
    1512<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="packages.xml"/>
    16 
    17 
    1813<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="patches.xml"/>
    1914
  • chapter03/packages.xml

    r411ceb8 r9dfc02f  
    2121
    2222Binutils (&binutils-version;) - 10,666 KB:
    23 <ulink url="&freshmeat;binutils/"/>
     23<ulink url="ftp://ftp.kernel.org/pub/linux/devel/binutils/"/>
    2424
    2525Bison (&bison-version;) - 796 KB:
    26 <ulink url="&freshmeat;bison/"/>
     26<ulink url="http://ftp.tuniv.szczecin.pl/pub/Linux/alpha-gnu/bison/"/>
    2727
    2828Bzip2 (&bzip2-version;) - 650 KB:
     
    4141<ulink url="&freshmeat;e2fsprogs/"/>
    4242
    43 Ed (&ed-version;) - 182 KB:
    44 <ulink url="&freshmeat;ed/"/>
    45 
    4643Expect (&expect-version;) - 510 KB:
    4744<ulink url="&freshmeat;expect/"/>
     
    5451
    5552Flex (&flex-version;) - 372 KB:
    56 <ulink url="ftp://ftp.gnu.org/gnu/non-gnu/flex/"/>
     53<ulink url="&freshmeat;flex/"/>
    5754
    5855Gawk (&gawk-version;) - 1,596 KB:
    5956<ulink url="&freshmeat;gnuawk/"/>
    6057
    61 GCC (&gcc-2953-version;) - 9,618 KB:
    62 <ulink url="&freshmeat;gcc/"/>
    63 
    64 GCC-core (&gcc-version;) - 11,283KB:
    65 <ulink url="&freshmeat;gcc/"/>
    66 
    67 GCC-g++ (&gcc-version;) - 2,026 KB:
    68 <ulink url="&freshmeat;gcc/"/>
    69 
    70 GCC-testsuite (&gcc-version;) - 1,051 KB:
     58GCC (&gcc-version;) - ~27,000KB:
    7159<ulink url="&freshmeat;gcc/"/>
    7260
     
    10290
    10391LFS-Bootscripts (&bootscripts-version;) - 32 KB:
    104 <ulink url="&http-down;"/>
     92<ulink url="http://www.linuxfromscratch.org/~nathan/"/>
    10593
    10694Libtool (&libtool-version;) - 2,602 KB:
     
    11098<ulink url="&freshmeat;linux/"/>
    11199
     100Linux-Libc-Headers (&linux-libc-headers-version;) - 2,381 KB:
     101<ulink url="http://ep09.pld-linux.org/~mmazur/linux-libc-headers/"/>
     102
    112103M4 (&m4-version;) - 310 KB:
    113104<ulink url="&freshmeat;gnum4/"/>
     
    115106Make (&make-version;) - 899 KB:
    116107<ulink url="&freshmeat;gnumake/"/>
    117 
    118 Make_devices (&makedev-version;) - 20 KB:
    119 <ulink url="&lfs-root;~alex/make_devices-1.2.bz2"/>
    120108
    121109Man (&man-version;) - 196 KB:
     
    128116<ulink url="&freshmeat;mktemp/"/>
    129117
    130 Modutils (&modutils-version;) - 229 KB:
    131 <ulink url="&freshmeat;modutils/"/>
     118Module-Init-Tools (&module-init-tools-version;) - 118 KB:
     119<ulink url="ftp://ftp.kernel.org/pub/linux/utils/kernel/module-init-tools/"/>
    132120
    133121Ncurses (&ncurses-version;) - 2,019 KB:
     
    142130Perl (&perl-version;) - 9,373 KB:
    143131<ulink url="&freshmeat;perl/"/>
    144 
    145 Procinfo (&procinfo-version;) - 24 KB:
    146 <ulink url="&freshmeat;procinfo/"/>
    147132
    148133Procps (&procps-version;) - 260 KB:
     
    173158<ulink url="&freshmeat;texinfo/"/>
    174159
     160Udev (&udev-version;) - 327 KB:
     161<ulink url="ftp://ftp.kernel.org/pub/linux/utils/kernel/hotplug/"/>
     162
    175163Util-linux (&util-linux-version;) - 1,814 KB:
    176164<ulink url="&freshmeat;util-linux/"/>
     
    191179url="ftp://gaosu.rave.org/pub/linux/lfs/"/>.</para></note>
    192180
    193 <note><para>2) As of this writing, the Glibc maintainers have decided in their
    194 wisdom not to make available new release tarballs for download. The only way to
    195 obtain the current Glibc release from pristine upstream sources is to pull it
    196 from the Glibc CVS (Concurrent Versioning System) repository. The following commands will download the current
    197 release and make a tarball from it:</para>
     181<note><para>2) Released packages of Glibc are not new enough for our purposes,
     182so create a tarball of some known-good CVS with the following commands:</para>
    198183
    199 <screen><userinput>cvs -z 9 -d :pserver:anoncvs@sources.redhat.com:/cvs/glibc \
    200     export -d glibc-2.3.3-20031202 -D "2003-12-02 UTC" libc
    201 tar jcvf glibc-2.3.3-20031202.tar.bz2 glibc-2.3.3-20031202</userinput></screen>
     184<screen><userinput>cvs -z 3 -d :pserver:anoncvs@sources.redhat.com:/cvs/glibc \
     185    export -d glibc-2.3.4-20040408 -D "18:00:00 2004-04-08 UTC" libc
     186sed -i -e "s/stable/2004-04-08/" -e "s/2\.3\.3/2.3.4/" \
     187    glibc-2.3.4-20040408/version.h
     188tar jcvf glibc-2.3.4-20040408.tar.bz2 glibc-2.3.4-20040408</userinput></screen>
    202189
    203 <para>Alternatively, we've made our own tarball available which you can
    204 download courtesy of the generous LFS mirror sites.</para>
    205 
    206 <literallayout><ulink url="ftp://gaosu.rave.org/pub/linux/lfs/packages/conglomeration/&glibc-version;.tar.bz2"/>
    207 <ulink url="http://lfs.mirror.intermedia.com.sg/packages/glibc/&glibc-version;.tar.bz2"/>
    208 <ulink url="ftp://lfs.mirror.intermedia.com.sg/pub/lfs/glibc/&glibc-version;.tar.bz2"/>
    209 <ulink url="http://dl.lfs.fredan.org/&glibc-version;.tar.bz2"/>
    210 <ulink url="http://packages.lfs-es.org/&glibc-version;.tar.bz2"/>
    211 <ulink url="http://mirror.averse.net/lfs-packages/&glibc-version;.tar.bz2"/>
    212 <ulink url="ftp://mirror.averse.net/pub/lfs-packages/&glibc-version;.tar.bz2"/>
    213 <ulink url="ftp://ftp.lfs-matrix.de/lfs/packages/conglomeration/&glibc-version;.tar.bz2"/></literallayout>
     190<para>Alternatively, we've made our own tarball available which you can download
     191from the following location:
     192<ulink url="ftp://belfs.linux-phreak.net/belfs/glibc-2.3.4-20040408.tar.bz2"/>
     193</para>
    214194</note>
    215195
  • chapter03/patches.xml

    r411ceb8 r9dfc02f  
    1717<ulink url="&patches-root;bash-&bash-version;-2.patch"/>
    1818
    19 Bison Attribute Patch - 2 KB:
    20 <ulink url="&patches-root;bison-&bison-version;-attribute.patch"/>
    21 
    2219Coreutils Hostname Patch - 1 KB:
    2320<ulink url="&patches-root;coreutils-&coreutils-version;-hostname-1.patch"/>
     
    2623<ulink url="&patches-root;coreutils-&coreutils-version;-uname-1.patch"/>
    2724
    28 Ed Mkstemp Patch - 1 KB:
    29 <ulink url="&patches-root;ed-&ed-version;-mkstemp.patch"/>
    30 
    3125Expect Spawn Patch - 6 KB:
    3226<ulink url="&patches-root;expect-&expect-version;-spawn-1.patch"/>
     27
     28Flex Brokenness Patch - 8 KB:
     29<ulink url="&patches-root;flex-&flex-version;-debian-fixes-2.patch"/>
    3330
    3431GCC No-Fixincludes Patch - 1 KB:
     
    3835<ulink url="&patches-root;gcc-&gcc-version;-specs-1.patch"/>
    3936
    40 GCC-2 Patch - 16 KB:
    41 <ulink url="&patches-root;gcc-&gcc-2953-version;-2.patch"/>
    42 
    43 GCC-2 No-Fixincludes Patch - 1 KB:
    44 <ulink url="&patches-root;gcc-&gcc-2953-version;-no-fixinc.patch"/>
    45 
    46 GCC-2 Return-Type Patch - 1 KB:
    47 <ulink url="&patches-root;gcc-&gcc-2953-version;-returntype-fix.patch"/>
     37Inetutils Kernel Headers Patch - 1 KB:
     38<ulink url="&patches-root;inetutils-&inetutils-version;-kernel-2.6-1.patch"/>
    4839
    4940Inetutils No-Server-Man-Pages Patch - 4 KB:
    5041<ulink url="&patches-root;inetutils-&inetutils-version;-no_server_man_pages-1.patch"/>
    51 
    52 Kbd More-Programs Patch - 1 KB:
    53 <ulink url="&patches-root;kbd-&kbd-version;-more-programs-1.patch"/>
    5442
    5543Man 80-Columns Patch - 1 KB:
     
    6250<ulink url="&patches-root;net-tools-&net-tools-version;-miitool-gcc33-1.patch"/>
    6351
     52Net-tools Kernel Headers Patch - 1 KB:
     53<ulink url="&patches-root;net-tools-&net-tools-version;-kernel-2.6-1.patch"/>
     54
    6455Perl Libc Patch - 1 KB:
    6556<ulink url="&patches-root;perl-&perl-version;-libc-1.patch"/>
     57
     58Sysklogd Kernel Headers Patch - 3 KB:
     59<ulink url="&patches-root;sysklogd-&sysklogd-version;-kernel_header.patch"/>
     60
     61Udev Configuration Patch - 6 KB:
     62<ulink url="&patches-root;udev-&udev-version;-config-1.patch"/>
     63
     64Util-Linux Kernel Headers Patch - 3 KB:
     65<ulink url="&patches-root;util-linux-&util-linux-version;-kernel-dj-2.6-1.patch"/>
    6666</literallayout>
    6767
  • chapter04/chapter04.xml

    r411ceb8 r9dfc02f  
    99<?dbhtml filename="chapter04.html"?>
    1010
    11 
    1211<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="aboutlfs.xml"/>
    1312<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="creatingtoolsdir.xml"/>
  • chapter05/bash.xml

    r411ceb8 r9dfc02f  
    3030<para>Now prepare Bash for compilation:</para>
    3131
    32 <screen><userinput>./configure --prefix=/tools</userinput></screen>
     32<screen><userinput>./configure --prefix=/tools --without-bash-malloc</userinput></screen>
    3333
    3434<para>Compile the program:</para>
  • chapter05/binutils-pass2.xml

    r411ceb8 r9dfc02f  
    5151will do so:</para>
    5252
    53 <screen><userinput>make check</userinput></screen>
     53<screen><userinput>make -k check</userinput></screen>
     54
     55<para>Except for a few known failures, the binutils tests should all pass. The
     56exceptions to this rule are as follows:</para>
     57
     58<screen>* 5 FAIL (unexpected failure) for visibility
     59* 1 FAIL for selective4
     60* 1 FAIL for selective5</screen>
     61
     62<!--
    5463
    5564<para>There should be no unexpected failures here, expected failures are fine.
     
    5968
    6069<blockquote><screen>make[1]: *** [check-binutils] Error 2</screen></blockquote>
     70
     71-->
    6172
    6273<para>And install the package:</para>
  • chapter05/bzip2.xml

    r411ceb8 r9dfc02f  
    2424
    2525<para>The Bzip2 package doesn't contain a <command>configure</command>
    26 script. Compile and install it with a straightforward:</para>
     26script. Compile it with a straightforward:</para>
     27
     28<screen><userinput>make</userinput></screen>
     29
     30<para>And install it:</para>
    2731
    2832<screen><userinput>make PREFIX=/tools install</userinput></screen>
  • chapter05/chapter05.xml

    r411ceb8 r9dfc02f  
    1010
    1111<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="introduction.xml"/>
     12<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="hostreqs.xml"/>
    1213<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="toolchaintechnotes.xml"/>
    1314<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="binutils-pass1.xml"/>
    1415<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="gcc-pass1.xml"/>
     16<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="linux-libc-headers.xml"/>
    1517<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="kernel-headers.xml"/>
    1618<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="glibc.xml"/>
     
    3638<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="texinfo.xml"/>
    3739<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="bash.xml"/>
     40<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="m4.xml"/>
     41<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="bison.xml"/>
     42<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="flex.xml"/>
    3843<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="util-linux.xml"/>
    3944<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="perl.xml"/>
     45<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="udev.xml"/>
    4046<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="stripping.xml"/>
    4147
  • chapter05/gcc-pass1.xml

    r411ceb8 r9dfc02f  
    4141
    4242<screen><userinput>../gcc-&gcc-version;/configure --prefix=/tools \
    43     --with-local-prefix=/tools \
    44     --disable-nls --enable-shared \
    45     --enable-languages=c</userinput></screen>
     43    --libexecdir=/tools/lib --with-local-prefix=/tools \
     44    --disable-nls --enable-shared --enable-languages=c</userinput></screen>
    4645
    4746<para>The meaning of the configure options:</para>
  • chapter05/gcc-pass2.xml

    r411ceb8 r9dfc02f  
    8484
    8585<screen><userinput>../gcc-&gcc-version;/configure --prefix=/tools \
    86     --with-local-prefix=/tools \
    87     --enable-clocale=gnu --enable-shared \
    88     --enable-threads=posix --enable-__cxa_atexit \
    89     --enable-languages=c,c++</userinput></screen>
     86    --libexecdir=/tools/lib --with-local-prefix=/tools \
     87    --enable-clocale=gnu --enable-shared --enable-threads=posix \
     88    --enable-__cxa_atexit --enable-languages=c,c++</userinput></screen>
    9089
    9190<para>The meaning of the new configure options:</para>
     
    142141mailing list for similar configurations to your own. For an example of how
    143142current GCC-&gcc-version; should look on i686-pc-linux-gnu, see
    144 <ulink url="http://gcc.gnu.org/ml/gcc-testresults/2004-01/msg00826.html"/>.</para>
    145 
    146 <para>Note that the results contain:</para>
    147 
    148 <screen>* 1 XPASS (unexpected pass) for g++
    149 * 1 FAIL (unexpected failure) for gcc
    150 * 24 XPASS's for libstdc++</screen>
    151  
    152 <para>The unexpected pass for g++ is due to the use of
    153 <emphasis>--enable-__cxa_atexit</emphasis>. Apparently not all platforms
    154 supported by GCC have support for <quote>__cxa_atexit</quote> in their C
    155 libraries, so this test is not always expected to pass.</para>
    156 
    157 <para>The 24 unexpected passes for libstdc++ are due to the use of
    158 <emphasis>--enable-clocale=gnu</emphasis>. This option, which is the correct
    159 choice on Glibc-based systems of versions 2.2.5 and above, enables in the GNU C
    160 library a locale support that is superior to the otherwise selected
    161 <emphasis>generic</emphasis> model (which may be applicable if for instance you
    162 were using Newlibc, Sun-libc or whatever other libc). The libstdc++ test suite
    163 is apparently expecting the <emphasis>generic</emphasis> model, hence those
    164 tests are not always expected to pass.</para>
     143<ulink url="http://gcc.gnu.org/ml/gcc-testresults/2004-04/msg00414.html"/>.</para>
    165144
    166145<para>Having a few unexpected failures often cannot be avoided. The GCC
    167146developers are usually aware of these, but haven't yet gotten around to fixing
    168 them. One particular case in point is the filebuf_members test in the C++
    169 standard library testsuite.  This test has been observed to fail in some
    170 situations, but succeeed in others.  In short, unless your results are vastly
    171 different from those at the above URL, it is safe to continue.</para>
     147them. In short, unless your results are vastly different from those at the above
     148URL, it is safe to continue.</para>
    172149
    173150<para>And finally install the package:</para>
  • chapter05/gettext.xml

    r411ceb8 r9dfc02f  
    2525<para>Prepare Gettext for compilation:</para>
    2626
    27 <screen><userinput>./configure --prefix=/tools</userinput></screen>
     27<screen><userinput>./configure --prefix=/tools --disable-libasprintf \
     28    --disable-csharp</userinput></screen>
     29
     30<itemizedlist>
     31<listitem><para><userinput>--disable-libasprintf</userinput>: This flag tells
     32Gettext that we don't want its asprintf library.  Nothing in Chapter 5 or 6
     33requires this, and gettext gets rebuilt later, so we exclude it to save
     34time/space.</para></listitem>
     35
     36<listitem><para><userinput>--disable-csharp</userinput>: Gettext has a nasty
     37habit of searching for a C# compiler on the host, and building bindings for it.
     38We've already <quote>locked</quote> ourselves into the temporary tools though,
     39which doesn't have a C# compiler.</para></listitem>
     40</itemizedlist>
    2841
    2942<para>Compile the programs:</para>
  • chapter05/glibc.xml

    r411ceb8 r9dfc02f  
    4040<para>Next, prepare Glibc for compilation:</para>
    4141
    42 <screen><userinput>../glibc-&glibc-version;-20031202/configure --prefix=/tools \
    43     --disable-profile --enable-add-ons=linuxthreads \
    44     --with-binutils=/tools/bin --with-headers=/tools/include \
    45     --without-gd --without-cvs</userinput></screen>
     42<screen><userinput>../glibc-&glibc-version;/configure --prefix=/tools \
     43    --disable-profile --enable-add-ons=nptl --with-tls \
     44    --with-binutils=/tools/bin --without-gd --without-cvs \
     45    --with-headers=/tools/glibc-kernheaders</userinput></screen>
    4646
    4747<para>The meaning of the configure options:</para>
    4848
    4949<itemizedlist>
    50 <listitem><para><userinput>--disable-profile</userinput>: This
    51 builds the libraries without profiling information. Omit this option if you
    52 plan to do profiling on the temporary tools.</para></listitem>
    53 
    54 <listitem><para><userinput>--enable-add-ons=linuxthreads</userinput>: This
    55 tells Glibc to use the Linuxthreads add-on as its threading
    56 library.</para></listitem>
    57 
    58 <listitem><para><userinput>--with-binutils=/tools/bin</userinput> and
    59 <userinput>--with-headers=/tools/include</userinput>: Strictly speaking
    60 these switches are not required. But they ensure nothing can go wrong with
    61 regard to what kernel headers and Binutils programs get used during the
    62 Glibc build.</para></listitem>
    63 
    64 <listitem><para><userinput>--without-gd</userinput>: This prevents
    65 the build of the <command>memusagestat</command> program, which
    66 strangely enough insists on linking against the host's libraries (libgd,
    67 libpng, libz, and so forth).</para></listitem>
     50<listitem><para><userinput>--disable-profile</userinput>: This builds the
     51libraries without profiling information. Omit this option if you plan to do
     52profiling on the temporary tools.</para></listitem>
     53
     54<listitem><para><userinput>--enable-add-ons=nptl</userinput>: This
     55tells Glibc to use the NPTL add-on as its threading library.</para></listitem>
     56
     57<listitem><para><userinput>--with-tls</userinput>: This tells Glibc to include
     58support for TLS (thread-local storage).  This is required for NPTL to work.
     59</para></listitem>
     60
     61<listitem><para><userinput>--with-binutils=/tools/bin</userinput>: Strictly
     62speaking this switch is not required. But it does ensure nothing can go wrong
     63with regard to what Binutils programs get used during the Glibc build.</para></listitem>
     64
     65<listitem><para><userinput>--without-gd</userinput>: This prevents the build
     66of the <command>memusagestat</command> program, which strangely enough insists
     67on linking against the host's libraries (libgd, libpng, libz, and so forth).
     68</para></listitem>
    6869
    6970<listitem><para><userinput>--without-cvs</userinput>: This is meant to prevent
     
    7273suppresses an annoying but harmless warning about a missing
    7374<command>autoconf</command> program.</para></listitem>
     75
     76<listitem><para><userinput>--with-headers=/tools/glibc-kernheaders</userinput>:
     77This tells Glibc to compile against the <quote>raw</quote> kernel headers, so
     78that it knows exactly what features the kernel has, and can optimize itself
     79accordingly.  Not strictly necessary, but nice to have.</para></listitem>
    7480</itemizedlist>
    7581
  • chapter05/kernel-headers.xml

    r411ceb8 r9dfc02f  
    3939symlink:</para>
    4040
    41 <screen><userinput>make symlinks</userinput></screen>
     41<screen><userinput>make include/asm</userinput></screen>
    4242
    4343<para>Install the platform-specific header files:</para>
    4444
    45 <screen><userinput>mkdir /tools/include/asm
    46 cp include/asm/* /tools/include/asm
    47 cp -R include/asm-generic /tools/include</userinput></screen>
     45<screen><userinput>mkdir /tools/glibc-kernheaders
     46cp -HR include/asm /tools/glibc-kernheaders
     47cp -R include/asm-generic /tools/glibc-kernheaders</userinput></screen>
    4848
    4949<para>Finally, install the cross-platform kernel header files:</para>
    5050
    51 <screen><userinput>cp -R include/linux /tools/include</userinput></screen>
     51<screen><userinput>cp -R include/linux /tools/glibc-kernheaders</userinput></screen>
    5252
    5353</sect2>
  • chapter05/perl.xml

    r411ceb8 r9dfc02f  
    2626
    2727<screen><userinput>patch -Np1 -i ../perl-&perl-version;-libc-1.patch</userinput></screen>
    28 
    29 <para>Perl insists on using the <command>arch</command> program to find out
    30 the machine type. Create a little script to mimic this command:</para>
    31 
    32 <screen><userinput>echo "uname -m" &gt; /tools/bin/arch
    33 chmod 755 /tools/bin/arch</userinput></screen>
    3428
    3529<para>Now prepare Perl for compilation (make sure you get the 'IO Fcntl POSIX'
  • chapter05/util-linux.xml

    r411ceb8 r9dfc02f  
    2323<title>Installation of Util-linux</title>
    2424
     25<para>Util-linux has issues with the Linux 2.6 kernel series - fix these issues
     26by applying the following patch:</para>
     27
     28<screen><userinput>patch -Np1 -i ../util-linux-&util-linux-version;-kernel-dj-2.6-1.patch</userinput></screen>
     29
    2530<para>Util-linux doesn't use the freshly installed headers and libraries
    2631from the /tools directory.  This is fixed by altering the configure
    2732script:</para>
    2833
    29 <screen><userinput>cp configure configure.backup
    30 sed "s@/usr/include@/tools/include@g" configure.backup > configure</userinput></screen>
     34<screen><userinput>sed -i "s@/usr/include@/tools/include@g" configure</userinput></screen>
    3135
    3236<para>Prepare Util-linux for compilation:</para>
  • chapter06/bash.xml

    r411ceb8 r9dfc02f  
    1919
    2020
    21 
    2221<sect2>
    2322<title>Installation of Bash</title>
     
    3130<para>Now prepare Bash for compilation:</para>
    3231
    33 <screen><userinput>./configure --prefix=/usr --bindir=/bin</userinput></screen>
     32<screen><userinput>./configure --prefix=/usr --bindir=/bin \
     33    --without-bash-malloc</userinput></screen>
    3434
    3535<para>Compile the package:</para>
  • chapter06/binutils.xml

    r411ceb8 r9dfc02f  
    3535<para>Your chroot environment is not set up for proper PTY operation. In this
    3636case there is no point in running the test suites for Binutils and GCC until you
    37 are able to resolve the issue. Please refer back to <xref linkend="ch-system-proc"/>
    38 and the <xref linkend="ch-system-MAKEDEV"/> section and perform the recommended steps
    39 to fix the problem.</para>
     37are able to resolve the issue.</para>
    4038
    4139<para>This package is known to behave badly when you have changed its
     
    7371<para>Test the results:</para>
    7472
    75 <screen><userinput>make check</userinput></screen>
     73<screen><userinput>make -k check</userinput></screen>
    7674
    7775<para>The test suite notes from <xref linkend="ch-tools-binutils-pass2"/> are still
  • chapter06/bison.xml

    r411ceb8 r9dfc02f  
    2323<title>Installation of Bison</title>
    2424
    25 <para>First fix a minor compilation problem that Bison has with some packages,
    26 the patch is back-ported from CVS:</para>
    27 
    28 <screen><userinput>patch -Np1 -i ../bison-&bison-version;-attribute.patch</userinput></screen>
    29 
    30 <para>Now prepare Bison for compilation:</para>
     25<para>Prepare Bison for compilation:</para>
    3126
    3227<screen><userinput>./configure --prefix=/usr</userinput></screen>
  • chapter06/bzip2.xml

    r411ceb8 r9dfc02f  
    5656ln -s ../../lib/libbz2.so.1.0 /usr/lib/libbz2.so
    5757rm /usr/bin/{bunzip2,bzcat,bzip2}
    58 mv /usr/bin/{bzip2recover,bzless,bzmore} /bin
    5958ln -s bzip2 /bin/bunzip2
    6059ln -s bzip2 /bin/bzcat</userinput></screen>
  • chapter06/chapter06.xml

    r411ceb8 r9dfc02f  
    99<?dbhtml filename="chapter06.html"?>
    1010
    11 
    1211<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="introduction.xml"/>
    13 
    14 
    15 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="proc.xml"/>
    16 
    17 
     12<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="kernfs.xml"/>
    1813<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="chroot.xml"/>
    19 
    20 
    2114<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="changingowner.xml"/>
    22 
    23 
    2415<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="creatingdirs.xml"/>
    25 
    26 
    2716<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="createfiles.xml"/>
    28 
    29 
    3017<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="pwdgroup.xml"/>
    31 
    32 
    33 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="makedev.xml"/>
    34 
    35 
    36 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="kernel-headers.xml"/>
    37 
    38 
     18<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="devices.xml"/>
     19<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="linux-libc-headers.xml"/>
    3920<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="man-pages.xml"/>
    40 
    41 
    4221<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="glibc.xml"/>
    43 
    44 
    45 
    46 
    4722<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="readjusting.xml"/>
    48 
    49 
    5023<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="binutils.xml"/>
    51 
    52 
    5324<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="gcc.xml"/>
    54 
    55 
    56 
    5725<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="coreutils.xml"/>
    58 
    59 
    6026<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="zlib.xml"/>
    61 
    62 
    6327<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="mktemp.xml"/>
    64 
    65 
    6628<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="iana-etc.xml"/>
    67 
    68 
    6929<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="findutils.xml"/>
    70 
    71 
    7230<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="gawk.xml"/>
    73 
    74 
    7531<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="ncurses.xml"/>
    76 
    77 
    7832<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="vim.xml"/>
    79 
    80 
    8133<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="m4.xml"/>
    82 
    83 
    8434<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="bison.xml"/>
    85 
    86 
    8735<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="less.xml"/>
    88 
    89 
    9036<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="groff.xml"/>
    91 
    92 
    9337<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="sed.xml"/>
    94 
    95 
    9638<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="flex.xml"/>
    97 
    98 
    9939<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="gettext.xml"/>
    100 
    101 
    10240<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="net-tools.xml"/>
    103 
    104 
    10541<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="inetutils.xml"/>
    106 
    107 
    10842<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="perl.xml"/>
    109 
    110 
    11143<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="texinfo.xml"/>
    112 
    113 
    11444<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="autoconf.xml"/>
    115 
    116 
    11745<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="automake.xml"/>
    118 
    119 
    12046<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="bash.xml"/>
    121 
    122 
    12347<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="file.xml"/>
    124 
    125 
    12648<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="libtool.xml"/>
    127 
    128 
    12949<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="bzip2.xml"/>
    130 
    131 
    13250<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="diffutils.xml"/>
    133 
    134 
    135 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="ed.xml"/>
    136 
    137 
    13851<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="kbd.xml"/>
    139 
    140 
    14152<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="e2fsprogs.xml"/>
    142 
    143 
    14453<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="grep.xml"/>
    145 
    146 
    14754<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="grub.xml"/>
    148 
    149 
    15055<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="gzip.xml"/>
    151 
    152 
    15356<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="man.xml"/>
    154 
    155 
    15657<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="make.xml"/>
    157 
    158 
    159 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="modutils.xml"/>
    160 
    161 
     58<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="module-init-tools.xml"/>
    16259<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="patch.xml"/>
    163 
    164 
    165 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="procinfo.xml"/>
    166 
    167 
    16860<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="procps.xml"/>
    169 
    170 
    17161<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="psmisc.xml"/>
    172 
    173 
    17462<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="shadow.xml"/>
    175 
    176 
    17763<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="sysklogd.xml"/>
    178 
    179 
    18064<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="sysvinit.xml"/>
    181 
    182 
    18365<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="tar.xml"/>
    184 
    185 
     66<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="udev.xml"/>
    18667<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="util-linux.xml"/>
    187 
    188 
    189 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="gcc-2953.xml"/>
    190 
    191 
    192 
    193 
    19468<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="aboutdebug.xml"/>
    195 
    19669
    19770<sect1 id="ch-system-strippingagain">
     
    240113</sect1>
    241114
    242 
    243115<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="revisedchroot.xml"/>
    244116
  • chapter06/coreutils.xml

    r411ceb8 r9dfc02f  
    5858<screen><userinput>make install-root</userinput></screen>
    5959
    60 <para>Create a 'table of mounted filesystems' file with:</para>
    61 
    62 <screen><userinput>touch /etc/mtab</userinput></screen>
    63 
    64 <para>And create two dummy groups and a dummy user name:</para>
     60<para>Create two dummy groups and a dummy user name:</para>
    6561
    6662<screen><userinput>echo "dummy1:x:1000" &gt;&gt; /etc/group
     
    7167are meant to be run as <emphasis>root</emphasis>:</para>
    7268
    73 <screen><userinput>export NON_ROOT_USERNAME=dummy; make check-root</userinput></screen>
     69<screen><userinput>make NON_ROOT_USERNAME=dummy make check-root</userinput></screen>
    7470
    7571<para>Then run the remainder of the tests as the <emphasis>dummy</emphasis>
     
    8076<para>When you're done testing, remove the dummy user and groups:</para>
    8177
    82 <screen><userinput>sed -i.bak '/dummy/d' /etc/passwd /etc/group</userinput></screen>
     78<screen><userinput>sed -i '/dummy/d' /etc/passwd /etc/group</userinput></screen>
    8379
    8480<para>Install the package:</para>
     
    8884<para>And move some programs to their proper locations:</para>
    8985
    90 <screen><userinput>mv /usr/bin/{basename,cat,chgrp,chmod,chown,cp,dd,df} /bin
     86<screen><userinput>mv /usr/bin/{[,basename,cat,chgrp,chmod,chown,cp,dd,df} /bin
    9187mv /usr/bin/{date,echo,false,head,install,ln,ls} /bin
    9288mv /usr/bin/{mkdir,mknod,mv,pwd,rm,rmdir,sync} /bin
     
    10096<screen><userinput>rm /usr/bin/kill</userinput></screen>
    10197
    102 <para>Finally, create two symlinks to be FHS-compliant:</para>
    103 
    104 <screen><userinput>ln -s test /bin/[
    105 ln -s ../../bin/install /usr/bin</userinput></screen>
     98<para>Finally, create a symlink to be FHS-compliant:</para>
     99
     100<screen><userinput>ln -s ../../bin/install /usr/bin</userinput></screen>
    106101
    107102</sect2>
  • chapter06/creatingdirs.xml

    r411ceb8 r9dfc02f  
    1212standard tree:</para>
    1313 
    14 <screen><userinput>mkdir -p /{bin,boot,dev/{pts,shm},etc/opt,home,lib,mnt,proc}
     14<screen><userinput>mkdir -p /{bin,boot,dev,etc/opt,home,lib,mnt}
    1515mkdir -p /{root,sbin,srv,tmp,usr/local,var,opt}
    1616mkdir -p /media/{floppy,cdrom}
     
    2626mkdir /usr/local/share/man/man{1,2,3,4,5,6,7,8}
    2727mkdir /var/{lock,log,mail,run,spool}
    28 mkdir -p /var/{tmp,opt,cache,lib/misc,local}
     28mkdir -p /var/{tmp,opt,cache,lib/{misc,locate},local}
    2929mkdir /opt/{bin,doc,include,info}
    3030mkdir -p /opt/{lib,man/man{1,2,3,4,5,6,7,8}}</userinput></screen>
  • chapter06/e2fsprogs.xml

    r411ceb8 r9dfc02f  
    2424<title>Installation of E2fsprogs</title>
    2525
    26 <para>It is recommended to build E2fsprogs outside of the
    27 source tree:</para>
    28 
    29 <screen><userinput>mkdir ../e2fsprogs-build
    30 cd ../e2fsprogs-build</userinput></screen>
    31 
    3226<para>Prepare E2fsprogs for compilation:</para>
    3327
    34 <screen><userinput>../e2fsprogs-&e2fsprogs-version;/configure --prefix=/usr --with-root-prefix="" \
    35     --enable-elf-shlibs</userinput></screen>
     28<screen><userinput>./configure --prefix=/usr --with-root-prefix="" \
     29    --enable-elf-shlibs --disable-evms</userinput></screen>
    3630
    3731<para>The meaning of the configure options:</para>
     
    5650<screen><userinput>make</userinput></screen>
    5751
    58 <para>If you to test the results, first make sure an mtab file
    59 exists with <userinput>touch /etc/mtab</userinput> to prevent some sixty tests
    60 from failing, and (if it doesn't already exist) fake the presence of an old
    61 pager with <userinput>ln -s /tools/bin/cat /bin/more</userinput> to prevent one
    62 test from failing, then issue: <userinput>make check</userinput>.</para>
     52<para>To test the results, issue:
     53<userinput>make check</userinput>.</para>
    6354
    6455<para>Install most of the package:</para>
  • chapter06/findutils.xml

    r411ceb8 r9dfc02f  
    2929
    3030<screen><userinput>./configure --prefix=/usr --libexecdir=/usr/lib/locate \
    31         --localstatedir=/var/lib/misc</userinput></screen>
     31    --localstatedir=/var/lib/locate</userinput></screen>
    3232
    3333<para>The localstatedir directive above changes the location of the locate
    34 database to be in /var/lib/misc, which is FHS-compliant.</para>
     34database to be in /var/lib/locate, which is FHS-compliant.</para>
    3535
    3636<para>Compile the package:</para>
  • chapter06/flex.xml

    r411ceb8 r9dfc02f  
    2424<title>Installation of Flex</title>
    2525
    26 <para>Prepare Flex for compilation:</para>
     26<para>Flex contains several known bugs. Fix these with the following patch:</para>
     27
     28<screen><userinput>patch -Np1 -i ../flex-&flex-version;-debian-fixes-2.patch</userinput></screen>
     29
     30<para>The GNU autotools detects that the Flex source code has been modified by the patch,
     31and tries to update the man pages to include those changes, but this breaks on many
     32systems, and the default pages are fine, so make sure they don't get renegerated:</para>
     33
     34<screen><userinput>touch doc/*.1</userinput></screen>
     35
     36<para>Now prepare Flex for compilation:</para>
    2737
    2838<screen><userinput>./configure --prefix=/usr</userinput></screen>
     
    3343
    3444<para>To test the results, issue:
    35 <userinput>make bigcheck</userinput>.</para>
     45<userinput>make check</userinput>.</para>
    3646
    3747<para>Now install the package:</para>
  • chapter06/gcc.xml

    r411ceb8 r9dfc02f  
    5656
    5757<screen><userinput>../gcc-&gcc-version;/configure --prefix=/usr \
    58     --enable-shared --enable-threads=posix \
    59     --enable-__cxa_atexit --enable-clocale=gnu \
    60     --enable-languages=c,c++</userinput></screen>
     58    --libexecdir=/usr/lib --enable-shared --enable-threads=posix \
     59    --enable-__cxa_atexit --enable-clocale=gnu --enable-languages=c,c++
     60</userinput></screen>
    6161
    6262<para>Compile the package:</para>
  • chapter06/glibc.xml

    r411ceb8 r9dfc02f  
    4343<para>Now prepare Glibc for compilation:</para>
    4444
    45 <screen><userinput>../glibc-&glibc-version;-20031202/configure --prefix=/usr \
    46     --disable-profile --enable-add-ons=linuxthreads \
    47     --libexecdir=/usr/lib --with-headers=/usr/include \
    48     --without-cvs</userinput></screen>
     45<screen><userinput>../glibc-&glibc-version;/configure --prefix=/usr \
     46    --disable-profile --enable-add-ons=nptl --with-tls \
     47    --libexecdir=/tmp/pt_chown --without-cvs \
     48    --with-headers=/tools/glibc-kernheaders</userinput></screen>
    4949
    5050<para>The meaning of the new configure options:</para>
    5151
    5252<itemizedlist>
    53 <listitem><para><userinput>--libexecdir=/usr/lib</userinput>: This changes the
    54 location of the <filename>pt_chown</filename> program from its default of
     53<listitem><para><userinput>--libexecdir=/tmp/pt_chown</userinput>: This changes
     54the location of the <filename>pt_chown</filename> program from its default of
    5555<filename class="directory">/usr/libexec</filename> to
    56 <filename class="directory">/usr/lib</filename>. The use of
    57 <emphasis>libexec</emphasis> is considered not to be FHS-compliant because the
    58 FHS doesn't even mention it.</para></listitem>
    59 
    60 <listitem><para><userinput>--with-headers=/usr/include</userinput>: This
    61 ensures that the kernel headers in <filename>/usr/include</filename> are used
    62 for this build. If you don't pass this switch then the headers from
    63 <filename>/tools/include</filename> are used which of course is not ideal
    64 (although they should be identical). Using this switch has the advantage
    65 that you will be informed immediately should you have forgotten to install the
    66 kernel headers into <filename>/usr/include</filename>.</para></listitem>
     56<filename class="directory">/tmp/pt_chown</filename>. This program isn't required
     57on modern systems, so we install it in a place from which we will delete it
     58later.</para></listitem>
    6759</itemizedlist>
    6860
     
    120112localedef -i ja_JP -f EUC-JP ja_JP</userinput></screen>
    121113
    122 <para>Finally, build the linuxthreads man pages:</para>
    123 
    124 <screen><userinput>make -C ../glibc-&glibc-version;-20031202/linuxthreads/man</userinput></screen>
     114<para>Finally, build the linuxthreads man pages, which are a great reference
     115on the threading API (applicable to NPTL as well):</para>
     116
     117<screen><userinput>make -C ../glibc-&glibc-version;/linuxthreads/man</userinput></screen>
    125118
    126119<para>And install these pages:</para>
    127120
    128 <screen><userinput>make -C ../glibc-&glibc-version;-20031202/linuxthreads/man install</userinput></screen>
     121<screen><userinput>make -C ../glibc-&glibc-version;/linuxthreads/man install</userinput></screen>
    129122
    130123</sect2>
  • chapter06/grub.xml

    r411ceb8 r9dfc02f  
    3333<screen><userinput>./configure --prefix=/usr</userinput></screen>
    3434
    35 <para>Compile the package:</para>
     35<para>A few of the files comprising Grub have issues with optimizations done
     36by GCC 3.4. Compile these few files with known-good optimizations:</para>
     37
     38<screen><userinput>make -C stage2 STAGE2_CFLAGS=-O2 \
     39    pre_stage2_exec-builtins.o pre_stage2_exec-serial.o</userinput></screen>
     40
     41<para>Now compile the rest of the package:</para>
    3642
    3743<screen><userinput>make</userinput></screen>
     44
     45<para>To test the results, issue:
     46<userinput>make check</userinput>.</para>
    3847
    3948<para>Now install it:</para>
  • chapter06/inetutils.xml

    r411ceb8 r9dfc02f  
    2222<sect2>
    2323<title>Installation of Inetutils</title>
     24
     25<para>Inetutils has issues with the Linux 2.6 kernel series - fix these isues
     26by applying the following patch:</para>
     27
     28<screen><userinput>patch -Np1 -i ../inetutils-&inetutils-version;-kernel-2.6-1.patch</userinput></screen>
    2429
    2530<para>We are not going to install all the programs that come with Inetutils.
  • chapter06/kbd.xml

    r411ceb8 r9dfc02f  
    2323<title>Installation of Kbd</title>
    2424
    25 <para>By default some of Kbd's utilities (<command>setlogcons</command>,
    26 <command>setvesablank</command> and <command>getunimap</command>) are
    27 not installed. First enable the compilation of these utilities:</para>
    28 
    29 <screen><userinput>patch -Np1 -i ../kbd-&kbd-version;-more-programs-1.patch</userinput></screen>
    30 
    31 <para>Now prepare Kbd for compilation:</para>
     25<para>Prepare Kbd for compilation:</para>
    3226
    3327<screen><userinput>./configure</userinput></screen>
     
    7468
    7569<screen><userinput>loadkeys -m /usr/share/kbd/keymaps/defkeymap.map.gz &gt; \
    76     /usr/src/linux-2.4.25/drivers/char/defkeymap.c</userinput></screen>
     70    /usr/src/linux-&linux-version;/drivers/char/defkeymap.c</userinput></screen>
    7771
    7872</sect2>
  • chapter06/net-tools.xml

    r411ceb8 r9dfc02f  
    3737
    3838<screen><userinput>patch -Np1 -i ../net-tools-&net-tools-version;-miitool-gcc33-1.patch</userinput></screen>
     39
     40<para>Net-tools has issues with the Linux 2.6 kernel series - fix these issues
     41by applying the following patch:</para>
     42
     43<screen><userinput>patch -Np1 -i ../net-tools-&net-tools-version;-kernel-2.6-1.patch</userinput></screen>
    3944
    4045<para>Now prepare Net-tools for compilation (if you intend to accept the
  • chapter06/psmisc.xml

    r411ceb8 r9dfc02f  
    2626<para>Prepare Psmisc for compilation:</para>
    2727
    28 <screen><userinput>./configure --prefix=/usr --exec-prefix=/</userinput></screen>
     28<screen><userinput>./configure --prefix=/usr --exec-prefix=""</userinput></screen>
    2929
    3030<para>The meaning of the configure option:</para>
    3131
    3232<itemizedlist>
    33 <listitem><para><userinput>--exec-prefix=/</userinput>: This causes the
     33<listitem><para><userinput>--exec-prefix=""</userinput>: This causes the
    3434binaries to be installed in <filename>/bin</filename> instead of
    3535<filename>/usr/bin</filename>. As the Psmisc programs are often used in
  • chapter06/pwdgroup.xml

    r411ceb8 r9dfc02f  
    4646dialout:x:10:
    4747audio:x:11:
     48video:x:12:
    4849<userinput>EOF</userinput></screen>
    4950
    5051<para>The created groups aren't part of any standard -- they are some of the
    51 groups that the <command>make_devices</command> script in the next section
     52groups that the Udev configuration we will be using in the next section
    5253uses. The LSB (<ulink url="http://www.linuxbase.org/">Linux Standard
    5354Base</ulink>) recommends only that, beside the group <quote>root</quote> with a
  • chapter06/shadow.xml

    r411ceb8 r9dfc02f  
    4343
    4444<screen><userinput>echo '#define HAVE_SETLOCALE 1' &gt;&gt; config.h</userinput></screen>
     45
     46<para>Shadow incorrectly declares the malloc() function, causing compilation
     47failure. Fix this:</para>
     48
     49<screen><userinput>sed -i '/extern char/d' libmisc/xmalloc.c</userinput></screen>
    4550
    4651<para>Compile the package:</para>
  • chapter06/sysklogd.xml

    r411ceb8 r9dfc02f  
    1919
    2020
    21 
    2221<sect2>
    2322<title>Installation of Sysklogd</title>
     23
     24<para>Sysklogd has issues with the Linux 2.6 kernel series - fix these isues
     25by applying the following patch:</para>
     26
     27<screen><userinput>patch -Np1 -i ../sysklogd-&sysklogd-version;-kernel_header.patch</userinput></screen>
    2428
    2529<para>Compile Sysklogd:</para>
  • chapter06/util-linux.xml

    r411ceb8 r9dfc02f  
    3939<sect2>
    4040<title>Installation of Util-linux</title>
     41
     42<para>Util-linux has issues with the Linux 2.6 kernel series - fix these isues
     43by applying the following patch:</para>
     44
     45<screen><userinput>patch -Np1 -i ../util-linux-&util-linux-version;-kernel-dj-2.6-1.patch</userinput></screen>
    4146
    4247<para>Prepare Util-linux for compilation:</para>
  • chapter06/vim.xml

    r411ceb8 r9dfc02f  
    4646
    4747<para>To test the results, you can issue:
    48 <userinput>make check</userinput>. However, this test suite outputs a lot of
     48<userinput>make test</userinput>. However, this test suite outputs a lot of
    4949seemingly garbage characters to the screen, and this can wreak havoc with the
    5050settings of the current terminal. Therefore the running of the test suite here
  • chapter07/bootscripts.xml

    r411ceb8 r9dfc02f  
    2525
    2626<screen><userinput>make install</userinput></screen>
     27
     28<para>Since we're using Udev, install the support script for it:</para>
     29
     30<screen><userinput>make install-udev</userinput></screen>
    2731
    2832</sect2>
  • chapter07/chapter07.xml

    r411ceb8 r9dfc02f  
    99<?dbhtml filename="chapter07.html"?>
    1010
    11 
    1211<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="introduction.xml"/>
    13 
    14 
    1512<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="bootscripts.xml"/>
    16 
    17 
    1813<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="usage.xml"/>
    19 
    20 
    2114<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="setclock.xml"/>
    22 
    23 
    2415<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="loadkeys.xml"/>
    25 
    26 
    2716<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="sysklogd.xml"/>
    28 
    29 
    3017<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="hostname.xml"/>
    31 
    32 
    3318<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="hosts.xml"/>
    34 
    35 
    3619<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="network.xml"/>
    3720
    38 
    39 
    4021</chapter>
  • chapter08/chapter08.xml

    r411ceb8 r9dfc02f  
    1010
    1111<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="introduction.xml"/>
    12 
    13 
    1412<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="fstab.xml"/>
    15 
    16 
    1713<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="kernel.xml"/>
    18 
    1914<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="grub.xml"/>
    2015
    21 
    22 
    2316</chapter>
  • chapter08/fstab.xml

    r411ceb8 r9dfc02f  
    2323/dev/yyy      swap         swap     pri=1           0     0
    2424proc          /proc        proc     defaults        0     0
     25sysfs         /sys         sysfs    defaults        0     0
    2526devpts        /dev/pts     devpts   gid=4,mode=620  0     0
    2627shm           /dev/shm     tmpfs    defaults        0     0
  • chapter08/grub.xml

    r411ceb8 r9dfc02f  
    9393
    9494# The first entry is for LFS.
    95 title LFS &milestone;
     95title LFS &milestone; (Linux &linux-version;)
    9696root (hd0,3)
    97 kernel --no-mem-option /boot/lfskernel root=/dev/hda4
     97kernel --no-mem-option /boot/lfskernel-&linux-version; root=/dev/hda4
    9898<userinput>EOF</userinput></screen>
    9999
  • chapter08/kernel.xml

    r411ceb8 r9dfc02f  
    5757the <quote>File systems</quote> menu and is normally enabled by default.</para>
    5858
    59 <para>Verify dependencies and create dependency information files:</para>
     59<note><para>NPTL requires the kernel to be compiled with GCC 3.x, in this case
     60&gcc-version;. Compiling with 2.95.x is known to cause failures in the glibc
     61testsuite, so do <emphasis>not</emphasis> compile the kernel with gcc 2.95.x
     62unless you know what you're getting yourself into.</para></note>
    6063
    61 <screen><userinput>make CC=/opt/gcc-2.95.3/bin/gcc dep</userinput></screen>
     64<para>Compile the kernel image and modules:</para>
    6265
    63 <para>Compile the kernel image:</para>
    64 
    65 <screen><userinput>make CC=/opt/gcc-2.95.3/bin/gcc bzImage</userinput></screen>
    66 
    67 <para>Compile the drivers which have been configured as modules:</para>
    68 
    69 <screen><userinput>make CC=/opt/gcc-2.95.3/bin/gcc modules</userinput></screen>
     66<screen><userinput>make</userinput></screen>
    7067
    7168<para>If you intend to use kernel modules, you will need an
    72 <filename>/etc/modules.conf</filename> file. Information pertaining
     69<filename>/etc/modprobe.conf</filename> file. Information pertaining
    7370to modules and to kernel configuration in general may be found in the
    7471kernel documentation, which is found in the
    75 <filename>linux-2.4.25/Documentation</filename> directory. The
     72<filename>linux-&linux-version;/Documentation</filename> directory. The
    7673modules.conf man page and the kernel HOWTO at
    7774<ulink url="http://www.tldp.org/HOWTO/Kernel-HOWTO.html"/> may also be of
     
    8077<para>Install the modules:</para>
    8178
    82 <screen><userinput>make CC=/opt/gcc-2.95.3/bin/gcc modules_install</userinput></screen>
     79<screen><userinput>make modules_install</userinput></screen>
    8380
    8481<para>If you have a lot of modules and very little space, you may want to
     
    8683isn't worth the trouble, but if you're really pressed for space, then have a look at
    8784<ulink url="http://www.linux-mips.org/archives/linux-mips/2002-04/msg00031.html"/>.</para>
    88 
    89 <para>As nothing is complete without documentation, build the manual pages
    90 that come with the kernel:</para>
    91 
    92 <screen><userinput>make mandocs</userinput></screen>
    93 
    94 <para>And install these pages:</para>
    95 
    96 <screen><userinput>cp -a Documentation/man /usr/share/man/man9</userinput></screen>
    9785
    9886<para>Kernel compilation has finished but more steps are required to complete
     
    10391using. Issue the following command to install the kernel:</para>
    10492
    105 <screen><userinput>cp arch/i386/boot/bzImage /boot/lfskernel</userinput></screen>
     93<screen><userinput>cp arch/i386/boot/bzImage /boot/lfskernel-&linux-version;</userinput></screen>
    10694
    10795<para><filename>System.map</filename> is a symbol file for the kernel. It maps
     
    11098following command to install the map file:</para>
    11199
    112 <screen><userinput>cp System.map /boot</userinput></screen>
     100<screen><userinput>cp System.map /boot/System.map-&linux-version;</userinput></screen>
    113101
    114102<para><filename>.config</filename> is the kernel configuration file that was
     
    117105to keep this file for future reference:</para>
    118106
    119 <screen><userinput>cp .config /boot/config-lfskernel</userinput></screen>
     107<screen><userinput>cp .config /boot/config-&linux-version;</userinput></screen>
    120108
    121109<para>It is important to note that the files in the kernel source directory are
  • chapter09/chapter09.xml

    r411ceb8 r9dfc02f  
    1010
    1111<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="theend.xml"/>
    12 
    13 
    1412<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="getcounted.xml"/>
    15 
    16 
    1713<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="reboot.xml"/>
    18 
    1914<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="whatnow.xml"/>
    2015
    21 
    2216</chapter>
  • chapter09/reboot.xml

    r411ceb8 r9dfc02f  
    1616
    1717<screen><userinput>umount $LFS/dev/pts
    18 umount $LFS/proc</userinput></screen>   
     18umount $LFS/dev/shm
     19umount $LFS/dev
     20umount $LFS/proc
     21umount $LFS/sys</userinput></screen>   
    1922
    2023<para>And unmount the LFS file system:</para>
  • general.ent

    r411ceb8 r9dfc02f  
    22<!ENTITY version "CVS-2004-05-03">
    33<!ENTITY releasedate "May 3, 2004">
    4 <!ENTITY milestone "5.1">
     4<!ENTITY milestone "6.0">
    55
    66<!ENTITY lfs-root "http://www.linuxfromscratch.org/">
     
    2020<!ENTITY automake-version "1.8.4">
    2121<!ENTITY bash-version "2.05b">
    22 <!ENTITY binutils-version "2.14">
    23 <!ENTITY bison-version "1.875">
     22<!ENTITY binutils-version "2.15.90.0.3">
     23<!ENTITY bison-version "1.875a">
    2424<!ENTITY bootscripts-version "2.0.4">
    2525<!ENTITY bzip2-version "1.0.2">
     
    2828<!ENTITY diffutils-version "2.8.1">
    2929<!ENTITY e2fsprogs-version "1.35">
    30 <!ENTITY ed-version "0.2">
    3130<!ENTITY expect-version "5.41.0">
    3231<!ENTITY file-version "4.09">
    3332<!ENTITY findutils-version "4.1.20">
    34 <!ENTITY flex-version "2.5.4a">
     33<!ENTITY flex-version "2.5.31">
    3534<!ENTITY gawk-version "3.1.3">
    36 <!ENTITY gcc-2953-version "2.95.3">
    3735<!ENTITY gcc-version "3.3.3">
    3836<!ENTITY gettext-version "0.14.1">
    39 <!ENTITY glibc-version "2.3.3">
     37<!ENTITY glibc-version "2.3.4-20040408">
    4038<!ENTITY grep-version "2.5.1">
    4139<!ENTITY groff-version "1.19">
     
    4745<!ENTITY less-version "382">
    4846<!ENTITY libtool-version "1.5.6">
    49 <!ENTITY linux-version "2.4.26">
     47<!ENTITY linux-version "2.6.5">
     48<!ENTITY linux-libc-headers-version "2.6.5.1">
    5049<!ENTITY m4-version "1.4">
    51 <!ENTITY makedev-version "1.2">
    5250<!ENTITY make-version "3.80">
    5351<!ENTITY man-version "1.5m2">
    5452<!ENTITY man-pages-version "1.66">
    5553<!ENTITY mktemp-version "1.5">
    56 <!ENTITY modutils-version "2.4.27">
     54<!ENTITY module-init-tools-version "3.0">
    5755<!ENTITY ncurses-version "5.4">
    5856<!ENTITY net-tools-version "1.60">
    5957<!ENTITY patch-version "2.5.4">
    6058<!ENTITY perl-version "5.8.4">
    61 <!ENTITY procinfo-version "18">
    6259<!ENTITY procps-version "3.2.1">
    6360<!ENTITY psmisc-version "21.4">
     
    7067<!ENTITY texinfo-version "4.7">
    7168<!ENTITY util-linux-version "2.12a">
     69<!ENTITY udev-version "025">
    7270<!ENTITY vim-version "6.2">
    7371<!ENTITY zlib-version "1.2.1">
  • index.xml

    r411ceb8 r9dfc02f  
    77
    88<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="prologue/bookinfo.xml"/>
    9 
    10 
    119<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="prologue/dedication.xml"/>
    12 
    1310<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="prologue/preface.xml"/>
    1411
     
    1815<?dbhtml filename="part1.html"?>
    1916<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="chapter01/chapter01.xml"/>
    20 
    2117<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="chapter02/chapter02.xml"/>
    22 
    2318</part>
    2419
     
    2722<?dbhtml filename="part2.html"?>
    2823<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="chapter03/chapter03.xml"/>
    29 
    3024<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="chapter04/chapter04.xml"/>
    31 
    32 
    3325<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="chapter05/chapter05.xml"/>
    34 
    35 
    3626</part>
    3727
     
    4030<?dbhtml filename="part3.html"?>
    4131<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="chapter06/chapter06.xml"/>
    42 
    43 
    4432<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="chapter07/chapter07.xml"/>
    45 
    46 
    4733<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="chapter08/chapter08.xml"/>
    48 
    4934<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="chapter09/chapter09.xml"/>
    50 
    51 
    5235</part>
    5336
Note: See TracChangeset for help on using the changeset viewer.