Centos如何升级GCC使其支持c++ 14+?
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
众所周知如果要使用C++ 14+那么就要升级GCC版本的而yum最新的版本非常古老只有4.8.5只能支持到11因此我们需要使用到scl,在教程开始之前我把GCC对C++支持情况对对照表放出来给到有需要的人
c++ 98:完全支持GCC 6.1之前版本的默认模式
c++ 11:完全支持从GCC4.8.1版本开始完全支持
c++ 14:完全支持从GCC 6.1版本开始完全支持是GCC 6.1到GCC 10 (包括) 的默认模式
c++ 17:完全支持从GCC 5版本开始到GCC 7版本已基本完全支持。 是GCC 11版本的默认模式
c++ 20:未完全支持从GCC 8版本开始陆续支持C++20特性
c++ 23:未完全支持标准还在发展中从GCC 11版本开始支持C++23特性
安装SCL第三方软件选集
SCL可以在不覆盖原有软件包的情况下与其共存缺点就是仅支持64位
SCL仅支持安装devtoolset-4gcc 5.2不含之后的gcc版本
使用下面命令安装SCL
yum install -y centos-release-scl
安装GCC
使用以下命令安装gcc其中的10表示大版本号默认安装大版本下的最新稳定版本
scl enable devtoolset-10 bash
启动GCC永久
使用以下命令永久启动gcc这种方式适用于长期使用该版本进行编译切换bash依然有效
source /opt/rh/devtoolset-10/enable 这里devtoolset-9/8/7都可以对应的是我们安装的gcc版本号
验证
使用gcc --version命令查看gcc版本以验证成功与否