CentOS6.5源码编译安装gcc-5.2.0

最近在做node.js开发,下载源码安装突然提示系统的gcc版本太低。于是赶紧的安装最新稳定版本gcc-5.2.0

首先到官网下载最新版本gcc:https://gcc.gnu.org/

(好家伙,一百多M)本地下载:百度网盘

准备开始:

1:解压,进入gcc目录

> tar -zxvf gcc-5.2.0.tar.gz
> cd gcc-5.2.0

2:安装依赖

> ./contrib/download_prerequisites
#会自动安装mpfr-2.4.2,gmp-4.3.2,mpc-0.8.1,isl-0.14

3:配置选项

> ./configure --enable-checking=release --enable-languages=c,c++ --disable-multilib

4:编译

> make -j4
#j后面的数字可根据cpu的核心数来做调整,可以更快的编译。编译时间一般比较长,你可以约个妹子去喝杯咖啡聊聊天??

5:安装

> sudo make install
#安装完成后测试
> gcc -v
使用内建 specs。
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/x86_64-unknown-linux-gnu/5.2.0/lto-wrapper
目标:x86_64-unknown-linux-gnu
配置为:./configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
线程模型:posix
gcc 版本 5.2.0 (GCC)

安装完成。


如果出现类似提示:

/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21′ not found

/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15′ not found

/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20′ not found

等等……需要更新动态链接库

#提示:最好备份原始链接库
#/usr/lib64/libstdc++.so.6  /usr/lib64/libstdc++.so.6.*
> sudo cp /usr/local/lib64/libstdc++.so.6.0.21 /usr/lib64/libstdc++.so.6.0.21
> sudo rm -r /usr/lib64/libstdc++.so.6
> sudo ln -s /usr/lib64/libstdc++.so.6.0.21 /usr/lib64/libstdc++.so.6