centos6 使用devtoolset一键升级和切换gcc/g++版本支持c++11/c++14特性

centos6默认的gcc版本比较老,为4.4.7,不支持c++11。我们可以通过yum快速安装devtoolset一键升级和切换gcc/g++版本支持c++11/c++14特性。升级后的版本独立不影响系统环境,且可以在多个版本间自由切换。
以下介绍devtoolset-3(对应gcc version 4.9.2,支持c++11)和devtoolset-7(对应gcc version 7.3.1,支持c++14)的安装以及使用方式。

查看当前版本

1
2
3
$gcc -v
# 输出如下信息,不支持c++11特性
gcc version 4.4.7 20120313 (Red Hat 4.4.7-18) (GCC)

安装scl

使用它,在多个gcc版本中切换更方便些。

1
$yum install centos-release-scl scl-utils

安装devtoolset-3

安装devtoolset-3中我们需要的部分

1
2
$rpm -ivh "https://www.softwarecollections.org/repos/rhscl/devtoolset-3/epel-6-x86_64/noarch/rhscl-devtoolset-3-epel-6-x86_64-1-2.noarch.rpm"
$yum install devtoolset-3-binutils devtoolset-3-gdb devtoolset-3-gcc-c++ devtoolset-3-gcc

也可以使用如下命令完整安装devtoolset-3,如果完整安装,会比较大。

1
$yum install devtoolset-3

切换到devtoolset-3环境

1
2
3
4
5
6
7
$scl enable devtoolset-3 bash
$gcc -v
# 输出信息:
gcc version 4.9.2 20150212 (Red Hat 4.9.2-6) (GCC)

# 退出devtoolset-3环境
$exit

安装devtoolset-7

和安装devtoolset-3相似。

1
2
3
4
5
6
$yum install devtoolset-7-binutils devtoolset-7-gdb devtoolset-7-gcc-c++ devtoolset-7-gcc

$scl enable devtoolset-7 bash
$gcc -v

gcc version 7.3.1 20180303 (Red Hat 7.3.1-5) (GCC)

参考链接

本文完,作者yoko,尊重劳动人民成果,转载请注明原文出处: https://pengrl.com/p/42585/

0%