[TOC]
-----
## 1 查看当前版本
* 编译新版gcc需要旧版支持(因为要编译)
* 确认是否有安装gcc
```
gcc -v
```
* 如果没有安装gcc, 如果机子有联网,则可以使用以下方法
```
yum -y install gcc
yum -y install gcc-g++
```
## 2 安装新版本
1. 解压
```
tar -jxvf gcc_4.9.0.tar.bz2 / tar -zxvf gcc_4.9.0.tar.gz
```
2. 下载依赖项
```
cd gcc-4.9.0
./contrib/download_prerequisites
```
如果网络不好,这步不能执行完毕的,可进行如下操作:
* 将相应的三个文件拷贝到gcc-4.9.0文件夹中,下载链接:[http://download.csdn.NET/detail/alex_my/7681299](http://download.csdn.NET/detail/alex_my/7681299)
* 复制好后,执行以下命令。这些命令均可在./contrib/download_prerequisites中看见
```
tar -jxvf gmp-4.3.2.tar.bz2
tar -zxvf mpc-0.8.1.tar.gz
tar -jxvf mpfr-2.4.2.tar.bz2
ln -sf gmp-4.3.2 gmp
ln -sf mpc-0.8.1 mpc
ln -sf mpfr-2.4.2
```
3. 下载完成后,返回上层目录,建立"编译输出目录"
```
cd ..
mkdir gcc-build-4.9.0
cd gcc-build-4.9.0
../gcc-4.9.0/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
```
4. 机子比较老,双核心
请按照CPU核心自行修改数字。
```
make -j2
```
5. 经过漫长的等待,终于结束了。接下来换root账户
```
su root
password:
make install
```
6. 一般gcc/g++会安装到/usr/local/bin中,而编译时默认使用的是/usr/bin中的版本,因此,需要重新制作链接。
```
rm -rf /usr/bin/gcc
rm -rf /usr/bin/g++
ln -s /usr/local/bin/gcc /usr/bin/gcc
ln -s /usr/local/bin/g++
```
7. 替换库
```
cp /usr/local/lib64/libstdc++.so.6.0.xxx /usr/lib64/
cd /usr/lib64
rm -rf libstdc++.so.6
ln -s libstdc++.so.6.0.19 libstdc++.so.6
```
8. 安装完毕后,使用gcc -v查看版本。