CentOS 7 下安装 gcc 9.3.0
本文主要介绍怎么在 CentOS 7 环境下安装 GCC 9.3.0,适用于部分源码包需要高版本的gcc进行编译的场景,需要准备的环境有:
CentOS 7
gcc-9.3.0.tar.gz
一、前期环境准备
安装gcc
使用下面命令安装gcc、gcc-c++,若已安装则忽略此步骤
yum install -y gcc gcc-c++
安装bzip2
使用以下命令安装bzip2,主要用于之后自动解压安装GCC依赖,若已安装则忽略此步骤
yum install -y bzip2
下载gcc-9.3.0.tar.gz
可以访问以下两个网站下载gcc源码包
https://gcc.gnu.org/pub/gcc/infrastructure/
http://mirror.hust.edu.cn/gnu/gcc/
方法一:有网络的环境下
解压gcc-9.3.0.tar.gz
将gcc-9.3.0.tar.gz放置于/home/目录下
进入/home/目录,使用以下命令解压
tar -xzvf gcc-9.3.0.tar.gz
得到gcc-9.3.0目录
安装gcc-9.3.0
进入/home/gcc-9.3.0/目录下,执行以下命令下载安装依赖
./contrib/download_prerequisites
若此处下载遇到问题,可编辑download_prerequisites文件,将ftp://gcc.gnu.org/pub/gcc/infrastructure/替换为http://gcc.gnu.org/pub/gcc/infrastructure/
进入/home/目录下,使用以下命令新建构建文件夹
mkdir gcc-build-9.3.0
进入/usr/lib/gcc/x86_64-redhat-linux/目录下,使用以下命令新建安装文件夹
mkdir 9.3.0
进入/home/gcc-build-9.3.0/目录下,使用以下命令建立编译后的文件存放目录以及配置编译语言等
../gcc-9.3.0/configure --prefix=/usr/lib/gcc/x86_64-redhat-linux/9.3.0/ --enable-checking=release --enable-languages=c,c++ --disable-multilib
使用以下命令执行安装,编译过程耗时较长,需要耐心等待,电脑不好的话,可能需要两小时
make && make install
查看gcc版本
使用以下命令查看gcc版本
gcc --version
方法二:无网络的环境下
如果网络原因编译失败,那么手动进行环境编译,需要下载这几个包
1.gmp http://ftp.gnu.org/gnu/gmp/
2.mpfr http://ftp.gnu.org/gnu/mpfr/
3.mpc http://ftp.gnu.org/gnu/mpc/
下载的各个版本为:
gmp-6.2.0.tar.xz
mpfr-4.1.0.tar.gz
mpc-1.1.0.tar.gz
gmp6.2.0编译安装
tar -xvzf gmp-6.2.0.tar.xz
mv gmp-6.2.0 gmp
cd gmp
mkdir temp
cd temp
../configure --prefix=/usr/local/gmp-6.2.0
make -j4
make install
mpfr4.1.0编译安装
tar -xvzf mpfr-4.1.0.tar.gz
mv mpfr-4.1.0 mpfr
cd mpfr
mkdir temp
cd temp
../configure --prefix=/usr/local/mpfr-4.1.0 --with-gmp=/usr/local/gmp-6.2.0
make -j4
make install
mpc1.10编译安装
tar -xvzf mpc-1.1.0.tar.gz
mv mpc-1.1.0 mpc
cd mpc
mkdir temp
cd temp/
../configure --prefix=/usr/local/mpc-1.1.0 --with-gmp=/usr/local/gmp-6.2.0 --with-mpfr=/usr/local/mpfr-4.1.0
make -j4
make install
更新系统环境变量
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc-1.1.0/lib:/usr/local/gmp-6.2.0/lib:/usr/local/mpfr-4.1.0/lib
gcc9.3.0编译安装,gcc编译时间非常的长
tar -jxvf gcc-9.3.0.tar.bz2
mv gcc-9.3.0 gcc
cd gcc
mkdir temp
cd temp
../configure --disable-multilib --enable-languages=c,c++ --with-gmp=/usr/local/gmp-6.2.0 --with-mpfr=/usr/local/mpfr-4.1.0 --with-mpc=/usr/local/mpc-1.1.0
make -j4
make install
安装之后执行 gcc -v 查看版本,若发现版本不正确请重启后再次查看