在CentOS 7.2下升级gcc编译器的版本

  默认状况下,CentOS 7.2预装的gcc版本是4.8.x,经过执行命令 gcc -v 能够看到,通常状况下这个版本的编译器已经知足须要了,可是某些特殊的时候为了支持C++更高的特性,须要对gcc编译器的版本进行升级,好比安装最新的Mariadb 10的时候,就须要使用高版本的gcc,具体升级过程以下:html

  首先去官网下载gcc的高版本安装包,镜像列表是:https://gcc.gnu.org/mirrors.html 进入后选择其中的镜像站,下载gcc便可,我这里要从4.8升级到4.9,因此这里下载的版本是4.9.3 下载地址是:http://fr.mirror.babylon.network/gcc/releases/gcc-4.9.3/ 下载其中的包为:gcc-4.9.3.tar.bz2c++

  下载以后上传至Linux准备安装,若是此时直接进行编译安装,此时gcc会报出错误:configure: error: Building GCC requires GMP 4.2+, MPFR 2.4.0+ and MPC 0.8.0+. 也就是说安装该版本的GCC 须要GMP 版本 >= 4.2 MPFR版本 >= 2.4.0 MPC版本 >= 0.8.0 这3个依赖缺一不可,而且这3个依赖之间也具备相互依赖关系,即gmp独立安装,mpfr依赖于gmp,mpc依赖于gmp和mpfr,虽然执行gcc目录下的: ./contrib/download_prerequisites 能够解决依赖问题,可是通常国内下载速度比较慢,因此这里手动安装以下三个依赖:vim

  这三个依赖分别是:gmp,mpfr和mpc,下载地址分别以下:ui

    gmp:http://ftp.gnu.org/gnu/gmp/spa

    mpfr(GNU镜像):http://ftp.gnu.org/gnu/mpfr/ 或者官网:http://www.mpfr.org/mpfr-current/.net

    mpc:http://ftp.gnu.org/gnu/mpc/code

  三个软件包具体版本分别是:gmp-5.0.1.tar.gz,mpfr-3.1.5.tar.gz,mpc-1.0.3.tar.gzhtm

  首先安装gmp,命令以下:blog

tar -xvzf gmp-5.0.1.tar.gz
cd gmp-5.0.1/
mkdir temp
cd temp/
../configure --prefix=/usr/local/gmp-5.0.1
make
make install

  这样就安装好了,注意:编译时建议指定安装位置,以便后面加载依赖,这里是/usr/local下编译器

  而后安装mpfr,命令以下:

tar -xvzf mpfr-3.1.5.tar.gz
cd mpfr-3.1.5/
mkdir temp
cd temp/
../configure --prefix=/usr/local/mpfr-3.1.5 --with-gmp=/usr/local/gmp-5.0.1
make
make install

  到这里mpfr安装完毕,而且必须添加--with-gmp导入gmp依赖,若是不加这个参数也会安装成功,可是后面安装GCC会报一个内部依赖的错误,若是这里不加会很麻烦,而后再安装mpc,命令以下:

tar -xvzf mpc-1.0.3.tar.gz
cd mpc-1.0.3/
mkdir temp
cd temp/
../configure --prefix=/usr/local/mpc-1.0.3 --with-gmp=/usr/local/gmp-5.0.1 --with-mpfr=/usr/local/mpfr-3.1.5
make
make install

  一样必定要加上依赖的参数,如今mpc也安装完毕,而后执行 vim /etc/profile 编辑环境变量配置文件,直接在文件最后添加一行下面的变量:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc-1.0.3/lib:/usr/local/gmp-5.0.1/lib:/usr/local/mpfr-3.1.5/lib

  上面的路径要和实际安装时编译的路径一致,保存并退出后,执行 source /etc/profile 使环境变量生效

  最后就能够开始安装gcc了,安装过程以下:

tar -jxvf gcc-4.9.3.tar.bz2
cd gcc-4.9.3/
mkdir output
cd output/
../configure --disable-multilib --enable-languages=c,c++ --with-gmp=/usr/local/gmp-5.0.1 --with-mpfr=/usr/local/mpfr-3.1.5 --with-mpc=/usr/local/mpc-1.0.3

  而后开始编译而且安装:

make -j4
make install

  make过程时间很是长,根据计算机配置不一样,时间有所差异,通常来讲半个小时到一个多小时都是正常的,由于gcc编译器相对来讲仍是比较庞大的一个项目的,安装成功以后执行 gcc -v 或者 gcc --version 查看新的版本信息以下:

  

  能够看到,新的gcc版本4.9.3已经生效了,如今gcc升级就完成了

相关文章
相关标签/搜索