一、安装环境
系统版本:centos6.3 X64
原GCC版本:gcc-4.4.7
新GCC版本:gcc-4.8.3
原GDB版本:gdb-7.2-75.el6
新GDB版本:gdb-7.6.1
二、正式安装
1、下载安装的源码:
需要下载以下包:gdb-7.6.1 gcc-4.6.1.tar.bz2 gmp-4.3.2.tar.bz2 mpc-0.8.1.tar.gz mpfr-2.4.2.tar.bz2
wget ftp://gcc.gnu.org/pub/gcc/infrastructure/gmp-4.3.2.tar.bz2
wget ftp://gcc.gnu.org/pub/gcc/infrastructure/mpc-0.8.1.tar.gz
wget ftp://gcc.gnu.org/pub/gcc/infrastructure/mpfr-2.4.2.tar.bz2
wget http://ftp.gnu.org/gnu/gcc/gcc-4.8.3/gcc-4.8.3.tar.bz2
wget http://ftp.gnu.org/gnu/gdb/gdb-7.6.1.tar.bz2
2、解压安装GCC:安装有先后顺序:GMP、MPFR、MPC、GCC
安装GMP:
tar jxf gmp-4.3.2.tar.bz2
cd gmp-4.3.2/
./configure --prefix=/usr/local/gmp/
make && make install
安装MPFR:
cd ../
tar jxf mpfr-2.4.2.tar.bz2
cd mpfr-2.4.2/
./configure --prefix=/usr/local/mpfr --with-gmp=/usr/local/gmp
make && make install
安装MPC:
cd ../
tar xzf mpc-0.8.1.tar.gz
cd mpc-0.8.1
./configure –prefix=/usr/local/mpc --with-mpfr=/usr/local/mpfr --with-gmp=/usr/local/gmp
make && make install
安装GCC:(注:也可以省略以上步骤使用GCC自带脚本 ./contrib/download_prerequisites 自动关联gmp,mpfr,mpc)
cd ../
tar jxf gcc-4.8.3.tar.bz2
cd gcc-4.8.3
./configure --prefix=/usr/local/gcc --enable-threads=posix --disable-checking --disable-multilib --enable-languages=c,c++ --with-gmp=/usr/local/gmp --with-mpfr=/usr/local/mpfr/ --with-mpc=/usr/local/mpc/
如执行后继续报错:Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0+
解决方法:
1.设置环境变量
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc/lib:/usr/local/gmp/lib:/usr/local/mpfr/lib
重新解压gmp-4.3.2.tar.bz2 mpc-0.8.1.tar.gz mpfr-2.4.2.tar.bz2三个文件并重命名为gmp、mpc、mpfr复制到gcc-4.8.3然后重新执行
./configure --prefix=/usr/local/gcc --enable-threads=posix --disable-checking --disable-multilib --enable-languages=c,c++
继续执行:
make && make install //这里需要很长一段时间
3.解压安装GDB
cd ../
tar jxf gdb-7.6.1.tar.bz2
cd gdb-7.6.1
./configure --prefix=/usr/local/gdb
make && make install
期间报错:configure: error: no termcap library found
直接编译安装termcap即可
下载链接:http://download.csdn.net/detail/hxl_c0s0d0n/4359422
安装完毕即可!然后做一个链接就可以使用GCC了
mkdir -p /data/backup/`date +%Y%m%d`
mv /usr/bin/{gcc,g++,gdb} /data/backup/`date +%Y%m%d`
新建软链接:
ln -s /usr/local/gcc/bin/gcc /usr/bin/gcc
ln -s /usr/local/gcc/bin/g++ /usr/bin/g++
ln -s /usr/local/gdb/bin/gdb /usr/bin/gdb
三、测试GCC和GDB
直接输入gcc -v 、gdb -v可以查看到gcc 版本为4.8.3、gdb 版本为7.6.1和相关的编译参数就ok了!