diff options
-rw-r--r-- | chapter01/changelog.xml | 6 | ||||
-rw-r--r-- | chapter06/gcc.xml | 40 |
2 files changed, 30 insertions, 16 deletions
diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 2ff76e43d..a906b3b48 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -40,6 +40,12 @@ <para>2013-03-29</para> <itemizedlist> <listitem> + <para>[matthew] - Use --disable-install-libiberty to prevent GCC from + installing libiberty.a (thanks to Armin K. for the pointer). Retain + the existing sed, though, as the flag doesn't work correctly + yet.</para> + </listitem> + <listitem> <para>[matthew] - Remove the now unnecessary instructions that prevented GCC's info files from being built; GCC-4.8.0 contains upstream fixes.</para> diff --git a/chapter06/gcc.xml b/chapter06/gcc.xml index b36cf66dc..011692cc0 100644 --- a/chapter06/gcc.xml +++ b/chapter06/gcc.xml @@ -41,13 +41,6 @@ <sect2 role="installation"> <title>Installation of GCC</title> - <para>Apply a <command>sed</command> substitution that will suppress the - installation of <filename class="libraryfile">libiberty.a</filename>. The - version of <filename class="libraryfile">libiberty.a</filename> provided by - Binutils will be used instead:</para> - -<screen><userinput remap="pre">sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in</userinput></screen> - <para>As in <xref linkend="ch-tools-gcc-pass2"/>, apply the following <command>sed</command> to force the build to use the <option>-fomit-frame-pointer</option> compiler flag in order to ensure @@ -57,6 +50,12 @@ i?86) sed -i 's/^T_CFLAGS =$/& -fomit-frame-pointer/' gcc/Makefile.in ;; esac</userinput></screen> + <para>Workaround a bug so that GCC doesn't install + <filename class="libraryfile">libiberty.a</filename>, which is already + provided by Binutils:</para> + +<screen><userinput remap="pre">sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in</userinput></screen> + <para>Also fix an error in one of the check Makefiles:</para> <screen><userinput remap="pre">sed -i -e /autogen/d -e /check.sh/d fixincludes/Makefile.in</userinput></screen> @@ -69,15 +68,16 @@ cd ../gcc-build</userinput></screen> <para>Prepare GCC for compilation:</para> -<screen><userinput remap="configure">../gcc-&gcc-version;/configure --prefix=/usr \ - --libexecdir=/usr/lib \ - --enable-shared \ - --enable-threads=posix \ - --enable-__cxa_atexit \ - --enable-clocale=gnu \ - --enable-languages=c,c++ \ - --disable-multilib \ - --disable-bootstrap \ +<screen><userinput remap="configure">../gcc-&gcc-version;/configure --prefix=/usr \ + --libexecdir=/usr/lib \ + --enable-shared \ + --enable-threads=posix \ + --enable-__cxa_atexit \ + --enable-clocale=gnu \ + --enable-languages=c,c++ \ + --disable-multilib \ + --disable-bootstrap \ + --disable-install-libiberty \ --with-system-zlib</userinput></screen> <para>Note that for other languages, there are some prerequisites that @@ -88,6 +88,14 @@ cd ../gcc-build</userinput></screen> <title>The meaning of the new configure option:</title> <varlistentry> + <term><parameter>--disable-install-libiberty</parameter></term> + <listitem> + <para>This prevents GCC from installing its own copy of libiberty, + which is already provided by Binutils-&binutils-version;.</para> + </listitem> + </varlistentry> + + <varlistentry> <term><parameter>--with-system-zlib</parameter></term> <listitem> <para>This switch tells GCC to link to the system installed copy of |