- Timestamp:
- 09/09/2005 08:34:44 PM (19 years ago)
- 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
- Location:
- chapter06
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
chapter06/gcc.xml
r98fe721 r2e02c35 39 39 unset them when building GCC.</para> 40 40 41 <para>Apply only the No-Fixincludes patch (not the Specs patch) also42 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 Scratch47 install (e.g., Mozilla and kdegraphics) when used in conjunction with newer48 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 52 41 <para>Apply a <command>sed</command> substitution that will suppress the 53 42 installation of <filename class="libraryfile">libiberty.a</filename>. The … … 56 45 57 46 <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"/> 49 built GCC with the <option>-fomit-frame-pointer</option> compiler flag. 50 Non-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 =$/& -fomit-frame-pointer/' gcc/Makefile.in</userinput></screen> 58 55 59 56 <para>The GCC documentation recommends building GCC outside of the source -
chapter06/glibc.xml
r98fe721 r2e02c35 21 21 <segtitle>&buildtime;</segtitle> 22 22 <segtitle>&diskspace;</segtitle> 23 <seglistitem><seg>1 2.3 SBU</seg><seg>476</seg></seglistitem>23 <seglistitem><seg>16.7 SBU</seg><seg>500</seg></seglistitem> 24 24 </segmentedlist> 25 25 … … 69 69 <screen><userinput>patch -Np1 -i ../&glibc-testfix-patch;</userinput></screen> 70 70 71 <para>Apply the following patches to enable Glibc to compile with 72 GCC-&gcc-version;:</para> 73 74 <screen><userinput>patch -Np1 -i ../&glibc-gcc4_symbols-patch; 75 patch -Np1 -i ../&glibc-gcc4_string-patch; 76 patch -Np1 -i ../&glibc-gcc4_elf-patch; 77 patch -Np1 -i ../&glibc-gcc4_iconvdata-patch;</userinput></screen> 78 79 <para>The following patch corrects the expected results for some of the math 80 tests on x86 processors when compiled with GCC-&gcc-version;:</para> 81 82 <screen><userinput>patch -Np1 -i ../&glibc-gcc4_mathtest-patch;</userinput></screen> 83 71 84 <para>The Glibc documentation recommends building Glibc outside of the source 72 85 directory in a dedicated build directory:</para> … … 103 116 <para>Test the results:</para> 104 117 105 <screen><userinput>make check</userinput></screen> 118 <screen><userinput> 119 make -k check >glibc-check-log 2>&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 124 gcc-&gcc-version;, as well as an expected (ignored) failure in <emphasis> 125 posix/annexc</emphasis>. These two failures in the math tests appear to be 126 harmless.</para> 106 127 107 128 <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, 129 the host system, in particular the kernel. In certain circumstances, 110 130 some failures are unavoidable. This is a list of the most common 111 131 issues:</para> 112 132 113 133 <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 135 when running 115 136 on systems where the CPU is not a relatively new genuine Intel or authentic AMD. 116 137 Certain optimization settings are also known to be a factor here.</para></listitem> -
chapter06/grub.xml
r98fe721 r2e02c35 47 47 48 48 <para>To test the results, issue: 49 <userinput>sed -i '/ufs2/d' stage2/size_test && 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> 57 50 58 51 <para>Install the package:</para> -
chapter06/inetutils.xml
r98fe721 r2e02c35 30 30 <sect2 role="installation"> 31 31 <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> 32 36 33 37 <para>All programs that come with Inetutils will not be installed. -
chapter06/kbd.xml
r98fe721 r2e02c35 31 31 <title>Installation of Kbd</title> 32 32 33 <para>Patch Kbd to fix a bug in <command>setfont</command> that is triggered 34 when compiling with GCC-&gcc-version;:</para> 35 36 <screen><userinput>patch -Np1 -i ../&kbd-gcc4_fixes-patch;</userinput></screen> 37 33 38 <para>Prepare Kbd for compilation:</para> 34 39 -
chapter06/readjusting.xml
r98fe721 r2e02c35 52 52 53 53 <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>54 dynamic linker. A <command>sed</command> command accomplishes this:</para> 55 55 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 && 57 gcc -dumpspecs > $SPECFILE && 58 sed -i 's@^/tools/lib/ld-linux.so.2@/lib/ld-linux.so.2@g' $SPECFILE && 59 unset SPECFILE</userinput></screen> 59 60 60 61 <para>It is a good idea to visually inspect the specs file to verify the intended -
chapter06/tar.xml
r98fe721 r2e02c35 30 30 <sect2 role="installation"> 31 31 <title>Installation of Tar</title> 32 33 <para>Apply a patch to fix some issues with the test suite when using 34 GCC-&gcc-version;:</para> 35 36 <screen><userinput>patch -Np1 -i ../&tar-gcc4_fix-patch;</userinput></screen> 32 37 33 38 <para>Tar has a bug when the <parameter>-S</parameter> option is used
Note:
See TracChangeset
for help on using the changeset viewer.