redhat6.5上自带的gcc版本较低,不支持最新的C++11标准,需要安装新的gcc,最新的版本为gcc-5.1.0; 1.解压文件
(1)使用root超级管理员登录;
(2)将gcc-5.1.0.tar.gz复制到/usr/local/中,并解压到当前文件夹为/usr/local/gcc-5.1.0; (3)新建文件夹存储gcc编译文件:mkdir /usr/local/gcc-build-5.1.0; 3.下载所需插件
(1)打开终端进入gcc-5.1.0;命令为:cd /usr/local/gcc-5.1.0/contrib;
(2)执行命令:./download_prerequisites 下载编译所需要的其他插件(插件的版本号不对会引起gcc编译错误);
(3)说明:下载的插件包在/usr/local/gcc-5.1.0/contrib文件夹下
有4个,分别为 isl-0.14.tar.bz2
gmp-4.3.2.tar.bz2 mpfr-2.4.2.tar.bz2 mpc-0.8.1.tar.gz
注:如果包已有,那就把包放到cd /usr/local/gcc-5.1.0/contrib下,修改download_prerequisites文件后再执行
download_prerequisites内注释掉下载
#wget ftp://gcc.gnu.org/pub/gcc/infrastructure/$MPFR.tar.bz2 || exit 1 #wget ftp://gcc.gnu.org/pub/gcc/infrastructure/$GMP.tar.bz2 || exit 1 #wget ftp://gcc.gnu.org/pub/gcc/infrastructure/$MPC.tar.gz || exit 1 # wget ftp://gcc.gnu.org/pub/gcc/infrastructure/$ISL.tar.bz2 || exit 1 此脚本带下载与自动解压及创建快捷路径
4.安装gmp
(1)已自动在当前目录解压并创建快捷方式目录gmp; (2)打开终端:cd /usr/local/gcc-5.1.0/contrib/gmp; (3)配置:./configure (4)编译:make (5)校验:make check (6)安装:make install
./configure ;make;make check;make install
5.安装mpfr
(1)已自动在当前目录解压并创建快捷方式目录mpfr; (2)打开终端:cd /usr/local/gcc-5.1.0/contrib/mpfr; (3)配置:./configure (4)编译:make (5)校验:make check
(6)安装:make install 6.安装mpc
(1)已自动在当前目录解压并创建快捷方式目录mpc; (2)打开终端:cd /usr/local/gcc-5.1.0/contrib/mpc; (3)配置:./configure (4)编译:make (5)校验:make check (6)安装:make install 7.添加到环境变量
(1)打开配置文件:vi /etc/profile;
(2)在文件的末尾增加export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib (3)使配置生效:source /etc/profile; 8.编译gcc-5.1.0
(1)打开终端进入:cd /usr/local/gcc-build-5.1.0;
(2)配置:../gcc-5.1.0/configure --disable-multilib --enable-languages=c,c++,java --build=x86_64-linux-gnu
解释:--disable-multilib 64位系统
--enable-languages=c,c++,java 支持的编程语言
--build=x86_64-linux-gnu 当前系统
(3)编译:make,需时大概1个多小时
(4)安装:make install,需时也比较长。 建议 make ;make install 9.使用gcc-5.1.0
(1)将老版本重命名:
执行:cd /usr/bin
mv gcc gcc-4.4.7 mv g++ g++-4.4.7;
(2)新建连接
执行ln –s /usr/local/gcc-5.1.0/bin/gcc gcc
ln –s /usr/local/gcc-5.1.0/bin/g++ g++;
[root@mach1 bin]# cd /usr/bin
[root@mach1 bin]# ln -s /usr/local/bin/gcc gcc [root@mach1 bin]# ln -s /usr/local/bin/g++ g++
(3)检查版本:
执行gcc -v