Linux 下升级gcc版本(gcc-7.3.0)

本文描述如何通过编译源码,来升级gcc编译版本,由于CentOs默认gcc编译版本太低不能满足需求。我通过自己的安装升级经验总结了一个shell脚本,整体时间大约在一个小时左右。

 

cd /usr/src/
vim upgradeGcc.sh

在upgradeGcc.sh中输入下面的内容

#!/bin/bash

#在非root账户下,使用sudo命令
#获取源码
#或者手动下载,在拷贝,下载目录:ftp://ftp.ntua.gr/pub/gnu/gcc/releases/gcc-7.3.0/
#sudo wget ftp://ftp.ntua.gr/pub/gnu/gcc/releases/gcc-7.3.0//gcc-7.3.0.tar.gz
wget ftp://ftp.ntua.gr/pub/gnu/gcc/releases/gcc-7.3.0/gcc-7.3.0.tar.gz

#解压
#sudo tar -xvf gcc-7.3.0.tar.gz
tar -xvf gcc-7.3.0.tar.gz


cd gcc-7.3.0
#sudo ./contrib/download_prerequisites
./contrib/download_prerequisites
cd ..

#建立编译输出目录
#sudo mkdir gcc-build-7.3.0
mkdir gcc-build-7.3.0

#进入下面目录,执行命令,生成Makefile文件
cd gcc-build-7.3.0
#sudo ../gcc-7.3.0/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
../gcc-7.3.0/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib

#执行命令进行编译,此处利用4个job,需编译时约40分钟,此值不宜设置过高
#sudo make -j4
make -j4

#安装
#sudo make install
make install
执行下面的命令,等待安装完成,等待时间可能有点长
chmod 777 upgradeGcc.sh
./upgradeGcc.sh
shell中的命令可以以脚本的方式执行,也可以以单条命令的方式执行。

检查版本

[root@promote ~]# g++ -v
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/x86_64-pc-linux-gnu/7.3.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: ../gcc-7.3.0/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
Thread model: posix
gcc version 7.3.0 (GCC)

升级成功。

进行检测:

#include 
using namespace std;

int main(int argc, char* argv[])
{
     cout << "Hello world!" << endl;
     auto i = 10;
     cout << i << endl;
     return 0;
}

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(Linux 下升级gcc版本(gcc-7.3.0))