在CentOS 7上安装gCC(GNU Compiler Collection)是开发和编译C/C++程序的常见需求,以下是一个详细的指南,包括如何安装不同版本的GCC以及一些常见问题解答。
一、安装步骤
1、更新系统:确保系统软件包是最新的,这有助于避免依赖问题。

- sudo yum update y
2、安装基本开发工具:这些工具包括gcc、g++、make等,是编译C/C++程序所必需的。
- sudo yum groupinstall 'Development Tools' y
3、验证安装:检查gcc和g++是否已成功安装,并查看其版本。
- gcc version
- g++ version
4、安装特定版本的GCC:如果需要安装特定版本的GCC(如GCC 9),可以使用以下步骤:
安装Software Collections库:这个库允许你在不覆盖系统默认软件包的情况下安装新的软件包。
- sudo yum install centosreleasescl y
启用相应的Software Collections存储库:对于GCC 9,启用devtoolset9存储库。
- sudo yumconfigmanager enable rhelserverrhscl7rpms
安装指定版本的GCC:这里以GCC 9为例。

- sudo yum install devtoolset9gcc devtoolset9gccc++ y
启用新版本的GCC:使新安装的GCC版本生效。
- scl enable devtoolset9 bash
验证安装:再次检查gcc和g++的版本。
- gcc version
- g++ version
二、常见问题解答(FAQs)
1、Q: CentOS 7默认安装了哪个版本的GCC?
A: CentOS 7默认安装的GCC版本是4.8.5,该版本完全支持C++11,部分支持C++14,但不支持C++17。
2、Q: 如何永久切换到新版本的GCC?
A: 虽然使用scl enable
命令可以临时切换到新版本的GCC,但重启后会恢复到旧版本,为了永久切换,可以将以下命令添加到~/.bash_profile
或/etc/profile
文件中(根据你的需求选择全局或局部配置):

- source /opt/rh/devtoolset9/enable
然后重新加载配置文件或重启终端。
- source ~/.bash_profile # 如果添加到了~/.bash_profile
- # 或者
- source /etc/profile # 如果添加到了/etc/profile