本文参考:http://www.cnblogs.com/mikevictor07/archive/2013/01/19/2867386.html
如果直接使用GUN GCC官方的源码来安装是不成功的,因为源码需要编译,编译要使用GCC,进入死循环,
所以需要先安装GCC的RPM包,这文件在RHEL系统光盘里Packages下有(这里使用i386盘),
由于编译gcc4.8.1需要g++编译器,所以也要在RHEL系统光盘里Packages安装g++
由于gcc需要依赖其他库,所以需要先安装其他文件,挂载光盘后即可按下列顺序安装.
如果你的环境与这里的不一样,根据错误信息安装所依赖的库就行,
安装顺序为:
1. rpm -ihv kernel-headers-2.6.32-279.el6.i686.rpm
2. rpm -ihv glibc-headers-2.12-1.80.el6.i686.rpm
3. rpm -ihv glibc-devel-2.12-1.80.el6.i686.rpm
4. rpm -ihv mpfr-2.4.1-6.el6.i686.rpm
5. rpm -ihv ppl-0.10.2-11.el6.i686.rpm
6. rpm -ihv cpp-4.4.6-4.el6.i686.rpm
7. rpm -ihv cloog-ppl-0.15.7-1.2.el6.i686.rpm
8. rpm -ihv gcc-4.4.6-4.el6.i686.rpm
安装G++如下:
9、rpm -ivh libstdc++-devel-4.4.6-4.el6.i686.rpm
10、rpm -vh gcc-c++-4.4.6-4.el6.i686.rpm
安装低版本的gcc后可以安装高版本,这里使用的是gcc-4.8.1.tar.gz,进入gcc路径后使用./configure -prefix /usr/local/gcc-4.8.1/
一般会出现错误:
configure: error: Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0+.
Try the --with-gmp, --with-mpfr and/or --with-mpc options to specify
their locations. Source code for these libraries can be found at
their respective hosting sites as well as at
ftp://gcc.gnu.org/pub/gcc/infrastructure/.
说明gcc需要GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0+
所以需要去gcc官方下载相应包:ftp://gcc.gnu.org/pub/gcc/infrastructure/
本次使用GMP5.1.2 MPFR3.1.2 MPC1.0.1
先安装GMP,其次MPFR,最后才是MPC
1. tar jxvf gmp-5.1.2.tar.bz2
2.mkdir /usr/local/gmp-5.1.2
3. ./configure --prefix=/usr/local/gmp-5.1.2/
4. make
5. make install
MPFR安装:
1 . tar jxvf mpfr-3.1.2.tar.bz2
2. mkdir /usr/local/mpfr-3.1.2
3. ./configure --prefix=/usr/local/mpfr-3.1.2/ --with-gmp=/usr/local/gmp-5.1.2/ ##这里需要加入gmp库路径
4.make
5.make install
MPC安装:
1. tar zxvf mpc-1.0.1.tar.gz
2. mkdir /usr/local/mpc-1.0.1
3. ./configure --prefix=/usr/local/mpc-1.0.1/ --with-gmp=/usr/local/gmp-5.1.2/ --with-mpfr=/usr/local/mpfr-3.1.2/
接下来进入gcc目录:
1.添加环境变量:export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc-1.0.1/lib:/usr/local/gmp-5.1.2/lib:/usr/local/mpfr-3.1.2/lib
2. ./configure --prefix=/usr/local/gcc-4.8.1/ -enable-threads=posix -disable-checking -disable-mutilib -enable-languages=c,c++,java --with-gmp=/usr/local/gmp-5.1.2/ --with-mpfr=/usr/local/mpfr-3.1.2/ --with-mpc=/usr/local/mpc-1.0.1/
然后再执行make,的确你可以去做其他事情了,这个需要时间比较长
3.获取你会碰到错误gcc/lto-compress.c:28:18: fatal error: zlib.h: No such file or direct,那你得安装rpm -ivh zlib-devel-1.2.3-27.el6.i686.rpm
4. 现在可以make了 然后make install,如果不出意外,安装就能成功