Changeset 2e02c35 for chapter06


Ignore:
Timestamp:
09/09/2005 08:34:44 PM (19 years ago)
Author:
Matthew Burgess <matthew@…>
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.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:
80d66d1
Parents:
98fe721
Message:

Upgrade to gcc-4.0.1 (merge of gcc4 branch)

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

Location:
chapter06
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • chapter06/gcc.xml

    r98fe721 r2e02c35  
    3939unset them when building GCC.</para>
    4040
    41 <para>Apply only the No-Fixincludes patch (not the Specs patch) also
    42 used in the previous chapter:</para>
    43 
    44 <screen><userinput>patch -Np1 -i ../&gcc-no_fixincludes-patch;</userinput></screen>
    45 
    46 <para>GCC fails to compile some packages outside of a base Linux From Scratch
    47 install (e.g., Mozilla and kdegraphics) when used in conjunction with newer
    48 versions of Binutils.  Apply the following patch to fix this issue:</para>
    49 
    50 <screen><userinput>patch -Np1 -i ../&gcc-linkonce-patch;</userinput></screen>
    51 
    5241<para>Apply a <command>sed</command> substitution that will suppress the
    5342installation of <filename class="libraryfile">libiberty.a</filename>. The
     
    5645
    5746<screen><userinput>sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in</userinput></screen>
     47
     48<para>The bootstrap build performed in <xref linkend="ch-tools-gcc-pass1"/>
     49built GCC with the <option>-fomit-frame-pointer</option> compiler flag.
     50Non-bootstrap builds omit this flag by default, so apply the following
     51<command>sed</command> to use it in order to ensure consistent compiler builds.
     52</para>
     53
     54<screen><userinput>sed -i 's/^XCFLAGS =$/&amp; -fomit-frame-pointer/' gcc/Makefile.in</userinput></screen>
    5855
    5956<para>The GCC documentation recommends building GCC outside of the source
  • chapter06/glibc.xml

    r98fe721 r2e02c35  
    2121<segtitle>&buildtime;</segtitle>
    2222<segtitle>&diskspace;</segtitle>
    23 <seglistitem><seg>12.3 SBU</seg><seg>476</seg></seglistitem>
     23<seglistitem><seg>16.7 SBU</seg><seg>500</seg></seglistitem>
    2424</segmentedlist>
    2525
     
    6969<screen><userinput>patch -Np1 -i ../&glibc-testfix-patch;</userinput></screen>
    7070
     71<para>Apply the following patches to enable Glibc to compile with
     72GCC-&gcc-version;:</para>
     73
     74<screen><userinput>patch -Np1 -i ../&glibc-gcc4_symbols-patch;
     75patch -Np1 -i ../&glibc-gcc4_string-patch;
     76patch -Np1 -i ../&glibc-gcc4_elf-patch;
     77patch -Np1 -i ../&glibc-gcc4_iconvdata-patch;</userinput></screen>
     78
     79<para>The following patch corrects the expected results for some of the math
     80tests on x86 processors when compiled with GCC-&gcc-version;:</para>
     81
     82<screen><userinput>patch -Np1 -i ../&glibc-gcc4_mathtest-patch;</userinput></screen>
     83
    7184<para>The Glibc documentation recommends building Glibc outside of the source
    7285directory in a dedicated build directory:</para>
     
    103116<para>Test the results:</para>
    104117
    105 <screen><userinput>make check</userinput></screen>
     118<screen><userinput>
     119make -k check &gt;glibc-check-log 2&gt;&amp;1 ; grep Error glibc-check-log
     120</userinput></screen>
     121
     122<para>On at least i686 you can expect to see failures in the <emphasis>test-double
     123</emphasis> and <emphasis>test-idouble</emphasis> math tests with
     124gcc-&gcc-version;, as well as an expected (ignored) failure in <emphasis>
     125posix/annexc</emphasis>.  These two failures in the math tests appear to be
     126harmless.</para>
    106127
    107128<para>The Glibc test suite is highly dependent on certain functions of
    108 the host system, in particular the kernel. In general, the Glibc test
    109 suite is always expected to pass. However, in certain circumstances,
     129the host system, in particular the kernel. In certain circumstances,
    110130some failures are unavoidable. This is a list of the most common
    111131issues:</para>
    112132
    113133<itemizedlist>
    114 <listitem><para>The <emphasis>math</emphasis> tests sometimes fail when running
     134<listitem><para>The <emphasis>math</emphasis> tests sometimes fail in other tests
     135when running
    115136on systems where the CPU is not a relatively new genuine Intel or authentic AMD.
    116137Certain optimization settings are also known to be a factor here.</para></listitem>
  • chapter06/grub.xml

    r98fe721 r2e02c35  
    4747
    4848<para>To test the results, issue:
    49 <userinput>sed -i '/ufs2/d' stage2/size_test &amp;&amp;
    50 make check</userinput>.</para>
    51 
    52 <para>The UFS test is known to fail due to a compiler issue.  The failure
    53 prevents the rest of the tests from being run, so the <command>sed</command>
    54 command is used to avoid the failure.  The UFS test failure can be ignored
    55 unless you plan to boot from a UFS partition.  The partitions are normally only
    56 used by Sun workstations.</para>
     49<userinput>make check</userinput>.</para>
    5750
    5851<para>Install the package:</para>
  • chapter06/inetutils.xml

    r98fe721 r2e02c35  
    3030<sect2 role="installation">
    3131<title>Installation of Inetutils</title>
     32
     33<para>Apply a patch to Inetutils to enable it to compile with GCC-&gcc-version;:</para>
     34
     35<screen><userinput>patch -Np1 -i ../&inetutils-gcc4_fixes-patch;</userinput></screen>
    3236
    3337<para>All programs that come with Inetutils will not be installed.
  • chapter06/kbd.xml

    r98fe721 r2e02c35  
    3131<title>Installation of Kbd</title>
    3232
     33<para>Patch Kbd to fix a bug in <command>setfont</command> that is triggered
     34when compiling with GCC-&gcc-version;:</para>
     35
     36<screen><userinput>patch -Np1 -i ../&kbd-gcc4_fixes-patch;</userinput></screen>
     37
    3338<para>Prepare Kbd for compilation:</para>
    3439
  • chapter06/readjusting.xml

    r98fe721 r2e02c35  
    5252
    5353<para>Next, amend the GCC specs file so that it points to the new
    54 dynamic linker. A <command>perl</command> command accomplishes this:</para>
     54dynamic linker. A <command>sed</command> command accomplishes this:</para>
    5555
    56 <screen><userinput>perl -pi -e 's@ /tools/lib/ld-linux.so.2@ /lib/ld-linux.so.2@g;' \
    57     -e 's@\*startfile_prefix_spec:\n@$_/usr/lib/ @g;' \
    58         `gcc -print-file-name=specs`</userinput></screen>
     56<screen><userinput>SPECFILE=`dirname $(gcc -print-libgcc-file-name)`/specs &amp;&amp;
     57gcc -dumpspecs > $SPECFILE &amp;&amp;
     58sed -i 's@^/tools/lib/ld-linux.so.2@/lib/ld-linux.so.2@g' $SPECFILE &amp;&amp;
     59unset SPECFILE</userinput></screen>
    5960
    6061<para>It is a good idea to visually inspect the specs file to verify the intended
  • chapter06/tar.xml

    r98fe721 r2e02c35  
    3030<sect2 role="installation">
    3131<title>Installation of Tar</title>
     32
     33<para>Apply a patch to fix some issues with the test suite when using
     34GCC-&gcc-version;:</para>
     35
     36<screen><userinput>patch -Np1 -i ../&tar-gcc4_fix-patch;</userinput></screen>
    3237
    3338<para>Tar has a bug when the <parameter>-S</parameter> option is used
Note: See TracChangeset for help on using the changeset viewer.