source: chapter06/gcc-2953-inst.xml@ 0bb2989

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.0 6.1 6.1.1 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 v5_0 v5_1 v5_1_1 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
Last change on this file since 0bb2989 was 677aef3, checked in by Greg Schafer <greg@…>, 21 years ago

GCC 2.95.3 fixes and other misc. toolchain related textual adjustments.

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

  • Property mode set to 100644
File size: 2.2 KB
Line 
1<sect2><title>&nbsp;</title><para>&nbsp;</para></sect2>
2
3<sect2>
4<title>Installation of GCC</title>
5
6<para>This package is known to behave badly when you have changed its
7default optimization flags (including the -march and -mcpu options).
8Therefore, if you have defined any environment variables that override
9default optimizations, such as CFLAGS and CXXFLAGS, we recommend unsetting
10or modifying them when building GCC.</para>
11
12<para>This is an older release of GCC which we are going to install for the
13purpose of compiling the Linux kernel in Chapter 8. This version is recommended
14by the kernel developers when you need absolute stability. Later versions of
15GCC have not received as much testing for Linux kernel compilation. Using a
16later version is likely to work, however, we recommend adhering to the kernel
17developer's advice and using the version here to compile your kernel.</para>
18
19<note><para>We don't install the C++ compiler or libraries here. However, there
20may be reasons why you would want to install them. More information can be found
21at <ulink url="&blfs-root;view/cvs/general/gcc2.html"/>.</para></note>
22
23<para>We'll install this older release of GCC into the non-standard prefix of
24<filename class="directory">/opt</filename> so as to avoid interfering with
25the system GCC already installed in <filename class="directory">/usr</filename>
26 .</para>
27
28<para>Apply the patches and make a small adjustment:</para>
29
30<para><screen><userinput>patch -Np1 -i ../gcc-&gcc-2953-patch-version;.patch
31patch -Np1 -i ../gcc-&gcc-2953-no-fixinc-patch-version;-no-fixinc.patch
32patch -Np1 -i ../gcc-&gcc-2953-returntype-fix-patch-version;-returntype-fix.patch
33echo timestamp > gcc/cstamp-h.in</userinput></screen></para>
34
35<para>The GCC documentation recommends building GCC outside of the source
36directory in a dedicated build directory:</para>
37
38<para><screen><userinput>mkdir ../gcc-2-build
39cd ../gcc-2-build</userinput></screen></para>
40
41<para>Compile and install gcc:</para>
42
43<para><screen><userinput>../gcc-2.95.3/configure --prefix=/opt/gcc-2.95.3 \
44&nbsp;&nbsp;&nbsp;&nbsp;--enable-shared --enable-languages=c \
45&nbsp;&nbsp;&nbsp;&nbsp;--enable-threads=posix
46make bootstrap
47make install</userinput></screen></para>
48
49</sect2>
50
Note: See TracBrowser for help on using the repository browser.