diff options
Diffstat (limited to 'chapter06/gcc-2953.xml')
-rw-r--r-- | chapter06/gcc-2953.xml | 52 |
1 files changed, 51 insertions, 1 deletions
diff --git a/chapter06/gcc-2953.xml b/chapter06/gcc-2953.xml index 0afac9ae7..f0f196ada 100644 --- a/chapter06/gcc-2953.xml +++ b/chapter06/gcc-2953.xml @@ -5,7 +5,57 @@ <screen>Estimated build time: &gcc-2953-time; Estimated required disk space: &gcc-2953-compsize;</screen> -&c6-gcc-2953-inst; + +<sect2><title> </title><para> </para></sect2> + +<sect2> +<title>Installation of GCC</title> + +<para>This package is known to behave badly when you have changed its +default optimization flags (including the -march and -mcpu options). +Therefore, if you have defined any environment variables that override +default optimizations, such as CFLAGS and CXXFLAGS, we recommend unsetting +or modifying them when building GCC.</para> + +<para>This is an older release of GCC which we are going to install for the +purpose of compiling the Linux kernel in <xref linkend="chapter08"/>. This +version is recommended +by the kernel developers when you need absolute stability. Later versions of +GCC have not received as much testing for Linux kernel compilation. Using a +later version is likely to work, however, we recommend adhering to the kernel +developer's advice and using the version here to compile your kernel.</para> + +<note><para>We don't install the C++ compiler or libraries here. However, there +may be reasons why you would want to install them. More information can be found +at <ulink url="&blfs-root;view/stable/general/gcc2.html"/>.</para></note> + +<para>We'll install this older release of GCC into the non-standard prefix of +<filename class="directory">/opt</filename> so as to avoid interfering with +the system GCC already installed in <filename class="directory">/usr</filename> + .</para> + +<para>Apply the patches and make a small adjustment:</para> + +<screen><userinput>patch -Np1 -i ../&gcc-2953-patch; +patch -Np1 -i ../&gcc-2953-no-fixinc-patch; +patch -Np1 -i ../&gcc-2953-returntype-fix-patch; +echo timestamp > gcc/cstamp-h.in</userinput></screen> + +<para>The GCC documentation recommends building GCC outside of the source +directory in a dedicated build directory:</para> + +<screen><userinput>mkdir ../gcc-2-build +cd ../gcc-2-build</userinput></screen> + +<para>Compile and install gcc:</para> + +<screen><userinput>../gcc-2.95.3/configure --prefix=/opt/gcc-2.95.3 \ + --enable-shared --enable-languages=c \ + --enable-threads=posix +make bootstrap +make install</userinput></screen> + +</sect2> </sect1> |