aboutsummaryrefslogtreecommitdiffstats
path: root/chapter05/gcc-pass2.xml
diff options
context:
space:
mode:
authorMatthew Burgess <matthew@linuxfromscratch.org>2004-05-03 10:59:46 +0000
committerMatthew Burgess <matthew@linuxfromscratch.org>2004-05-03 10:59:46 +0000
commit673b0d84ba9591e07c0bdf0ee49d92eba10f502c (patch)
tree129e27a1450727b440da4378e0117a468eb9c25e /chapter05/gcc-pass2.xml
parent287ea55da70ceb1f0990554b7db921d525fef816 (diff)
* Merged newxml into HEAD
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@3435 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Diffstat (limited to 'chapter05/gcc-pass2.xml')
-rw-r--r--chapter05/gcc-pass2.xml76
1 files changed, 41 insertions, 35 deletions
diff --git a/chapter05/gcc-pass2.xml b/chapter05/gcc-pass2.xml
index da119311c..d89d82e82 100644
--- a/chapter05/gcc-pass2.xml
+++ b/chapter05/gcc-pass2.xml
@@ -1,14 +1,19 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+ <!ENTITY % general-entities SYSTEM "../general.ent">
+ %general-entities;
+]>
<sect1 id="ch-tools-gcc-pass2">
-<title>Installing GCC-&gcc-version; - Pass 2</title>
-<?dbhtml filename="gcc-pass2.html" dir="chapter05"?>
+<title>GCC-&gcc-version; - Pass 2</title>
+<?dbhtml filename="gcc-pass2.html"?>
-<screen>&buildtime; &gcc-time-tools-pass2;
-&diskspace; &gcc-compsize-tools-pass2;</screen>
+<indexterm zone="ch-tools-gcc-pass2">
+<primary sortas="a-GCC">GCC</primary>
+<secondary>tools, pass 2</secondary></indexterm>
-&aa-gcc-down;
-&aa-gcc-dep;
+<screen>&buildtime; 11.0 SBU
+&diskspace; 274 MB</screen>
-<sect2><title>&nbsp;</title><para>&nbsp;</para></sect2>
<sect2>
<title>Re-installation of GCC</title>
@@ -37,24 +42,24 @@ working.</para>
<para>This time we will build both the C and the C++ compilers, so you'll have
to unpack both the core and the g++ tarballs (and testsuite too, if you want to
run the tests). Unpacking them in your working directory, they will all unfold
-into a single <filename>&gcc-dir;/</filename> subdirectory.</para>
+into a single <filename>gcc-&gcc-version;/</filename> subdirectory.</para>
<para>First correct a problem and make an essential adjustment:</para>
-<screen><userinput>patch -Np1 -i ../&gcc-nofixincludes-patch;
-patch -Np1 -i ../&gcc-specs-patch;</userinput></screen>
-
-<para>The first patch disables the GCC "fixincludes" script. We mentioned this
-briefly earlier, but a slightly more in-depth explanation of the fixincludes
-process is warranted here. Under normal circumstances, the GCC fixincludes
-script scans your system for header files that need to be fixed. It might find
-that some Glibc header files on your host system need to be fixed, fix them and
-put them in the GCC private include directory. Then, later on in
-<xref linkend="chapter-building-system"/>, after we've installed the newer Glibc, this
-private include directory would be searched before the system include
-directory, resulting in GCC finding the fixed headers from the host system,
-which would most likely not match the Glibc version actually used for the LFS
-system.</para>
+<screen><userinput>patch -Np1 -i ../gcc-&gcc-version;-no_fixincludes-1.patch
+patch -Np1 -i ../gcc-&gcc-version;-specs-1.patch</userinput></screen>
+
+<para>The first patch disables the GCC <quote>fixincludes</quote> script. We
+mentioned this briefly earlier, but a slightly more in-depth explanation of
+the fixincludes process is warranted here. Under normal circumstances, the GCC
+fixincludes script scans your system for header files that need to be fixed. It
+might find that some Glibc header files on your host system need to be fixed,
+fix them and put them in the GCC private include directory. Then, later on in
+<xref linkend="chapter-building-system"/>, after we've installed the newer
+Glibc, this private include directory would be searched before the system
+include directory, resulting in GCC finding the fixed headers from the host
+system, which would most likely not match the Glibc version actually used for
+the LFS system.</para>
<para>The second patch changes GCC's default location of the dynamic linker
(typically <filename>ld-linux.so.2</filename>). It also removes
@@ -77,11 +82,11 @@ variables that override the default optimization flags.</para>
<para>Now prepare GCC for compilation:</para>
-<screen><userinput>../&gcc-dir;/configure --prefix=/tools \
-&nbsp;&nbsp;&nbsp;&nbsp;--with-local-prefix=/tools \
-&nbsp;&nbsp;&nbsp;&nbsp;--enable-clocale=gnu --enable-shared \
-&nbsp;&nbsp;&nbsp;&nbsp;--enable-threads=posix --enable-__cxa_atexit \
-&nbsp;&nbsp;&nbsp;&nbsp;--enable-languages=c,c++</userinput></screen>
+<screen><userinput>../gcc-&gcc-version;/configure --prefix=/tools \
+ --with-local-prefix=/tools \
+ --enable-clocale=gnu --enable-shared \
+ --enable-threads=posix --enable-__cxa_atexit \
+ --enable-languages=c,c++</userinput></screen>
<para>The meaning of the new configure options:</para>
@@ -128,7 +133,7 @@ through to completion and not stop at the first failure. The GCC test suite is
very comprehensive and is almost guaranteed to generate a few failures. To get
a summary of the test suite results, run this:</para>
-<screen><userinput>../&gcc-dir;/contrib/test_summary</userinput></screen>
+<screen><userinput>../gcc-&gcc-version;/contrib/test_summary</userinput></screen>
<para>(For just the summaries, pipe the output through
<userinput>grep -A7 Summ</userinput>.)</para>
@@ -146,8 +151,8 @@ current GCC-&gcc-version; should look on i686-pc-linux-gnu, see
<para>The unexpected pass for g++ is due to the use of
<emphasis>--enable-__cxa_atexit</emphasis>. Apparently not all platforms
-supported by GCC have support for "__cxa_atexit" in their C libraries, so this
-test is not always expected to pass.</para>
+supported by GCC have support for <quote>__cxa_atexit</quote> in their C
+libraries, so this test is not always expected to pass.</para>
<para>The 24 unexpected passes for libstdc++ are due to the use of
<emphasis>--enable-clocale=gnu</emphasis>. This option, which is the correct
@@ -160,8 +165,10 @@ tests are not always expected to pass.</para>
<para>Having a few unexpected failures often cannot be avoided. The GCC
developers are usually aware of these, but haven't yet gotten around to fixing
-them. In short, unless your results are vastly different from those at the
-above URL, it is safe to continue.</para>
+them. One particular case in point is the filebuf_members test in the C++
+standard library testsuite. This test has been observed to fail in some
+situations, but succeeed in others. In short, unless your results are vastly
+different from those at the above URL, it is safe to continue.</para>
<para>And finally install the package:</para>
@@ -175,9 +182,8 @@ GCC Specs patch.</para></note>
</sect2>
-<sect2><title>&nbsp;</title><para>&nbsp;</para>
+<sect2><title> </title><para> </para>
<para>The details on this package are found in <xref linkend="contents-gcc"/>.</para>
-<para>&nbsp;</para></sect2>
+<para> </para></sect2>
</sect1>
-