%general-entities; ]> $LastChangedBy$ $Date$ gcc-&gcc3-version;.tar gcc GCC-&gcc3-version; GCC-&gcc3-version; Introduction to GCC-&gcc3-version; There are several reasons why you may wish to install GCC-&gcc3-version;. Some packages have not been updated so they can be successfully compiled by GCC-&gcc-version; as version 4.x.x of GCC is much stricter in enforcing coding standards. Additionally, some pre-compiled packages may require the GCC-&gcc3-version; libraries at run-time. Another reason you may need to install GCC-&gcc3-version; is to use the g77 Fortran 77 compiler provided by pre-4.x.x versions of GCC. GCC-4.x.x only includes gfortran, a Fortran 95 compatible compiler that is not yet ready to be used in a production environment. If all you need is a working {f,g}77 Fortran 77 compiler, you may wish to use the one provided by GCC-3.4.x. This is what the GCC developers recommend. Instructions for building the GCC-3.4.x Fortran compiler can be found on the BLFS Wiki. Package Information Download (HTTP): Download (FTP): Download MD5 sum: &gcc3-md5sum; Download size: &gcc3-size; Estimated disk space required: &gcc3-buildsize; Estimated build time: &gcc3-time; Additional Downloads Required patch: Required patch: GCC-&gcc3-version; Dependencies Optional (required to run the full test suite) User Notes: Installation of GCC-&gcc3-version; Install GCC-&gcc3-version; by running the following commands: patch -Np1 -i ../gcc-&gcc3-version;-no_fixincludes-1.patch && patch -Np1 -i ../gcc-&gcc3-version;-linkonce-1.patch && mkdir ../gcc-build && cd ../gcc-build && ../gcc-&gcc3-version;/configure --prefix=/opt/gcc-&gcc3-version; \ --enable-shared --enable-languages=c,c++ --enable-threads=posix && make bootstrap If desired, run the test suite using the following commands. The test_summary commands create log files which can be compared to known good results located at . make -k check && ../gcc-&gcc3-version;/contrib/test_summary >test_summary.log 2>&1 && ../gcc-&gcc3-version;/contrib/test_summary | \ grep -A7 Summ >test_summary_short.log 2>&1 Now, as the root user: make install && mv -v /opt/gcc-&gcc3-version;/lib/libstdc++.so.5* /usr/lib && ln -v -sf /usr/lib/libstdc++.so.5.0.7 /opt/gcc-&gcc3-version;/lib && ln -v -sf libstdc++.so.5.0.7 /opt/gcc-&gcc3-version;/lib/libstdc++.so.5 && chown -v -R root:root \ /opt/gcc-&gcc3-version;/lib/gcc-lib/i686-pc-linux-gnu/&gcc3-version;/include Command Explanations mkdir ../gcc-build; cd ../gcc-build: The GCC development team recommends building in a separate directory. --enable-shared --enable-languages=c,c++ --enable-threads=posix: Configures GCC to build the C and C++ compilers and enable the related C++ options. In addition to c and c++, you can add f77 for FORTRAN (called g77). Note that GCC-4 no longer provides a FORTRAN 77 compiler. g77 FORTRAN mv -v /opt/gcc-&gcc3-version;/lib/libstdc++.so.5* /usr/lib: Moves the C++ library to the standard lib directory to avoid having to add /opt/gcc-&gcc3-version;/lib to /etc/ld.so.conf. Configuring GCC-&gcc3-version; Configuration information If you only need the GCC-&gcc3-version; C++ library, you may delete /opt/gcc-&gcc3-version;. Whenever you need to use GCC-&gcc3-version; instead of your system installed compiler, add /opt/gcc-&gcc3-version;/bin to the front of your PATH or (preferably) set the CC environment variable before compiling the concerned package. If you use g77 programs, you also should move the libg2c.* libraries and symbolic links to /usr/lib. Using export LD_LIBRARY_PATH=/opt/gcc-&gcc3-version;/lib or updating /etc/ld.so.conf to point to /opt/gcc-&gcc3-version;/lib is not recommended as it may conflict with your normal libraries. Contents Installed Programs Installed Libraries Installed Directory c++, cpp, g++, gcc, gccbug, gcov, and architecture specific names of these programs. libgcc_s.so, libiberty.a, libstdc++.{a,so}, libsupc++.a, and other support libraries and files. /opt/gcc-&gcc3-version; Short Descriptions The GCC-&gcc3-version; package contains the gcc-&gcc3-version; C and C++ compilers and the GCC-&gcc3-version; libstdc++.so library that is required by some commercial and pre-compiled packages.