在CentOS系统中安装GCC编译器是开发环境中常见的任务,尤其是针对需要特定版本GCC(如5.1)的项目,本文将详细介绍在CentOS上安装GCC 5.1的完整步骤,包括环境准备、依赖安装、版本切换及常见问题处理,确保整个过程清晰易懂。

环境准备与系统更新
在开始安装GCC之前,建议先更新系统软件包列表并升级已安装的包,以确保系统的稳定性和兼容性,打开终端,执行以下命令:
sudo yum update -y sudo yum groupinstall "Development Tools" -y
Development Tools组包含了GCC、make、autoconf等基础开发工具,能简化后续安装流程,若系统为CentOS 7或更高版本,建议启用EPEL(Extra Packages for Enterprise Linux)仓库,以获取更多第三方软件包支持:
sudo yum install epel-release -y
安装SCL(Software Collections)
GCC 5.1并非CentOS官方源中的默认版本,尤其是CentOS 7及更高版本默认提供的是GCC 4.8或更高版本(如GCC 9+),可通过Red Hat提供的Software Collections(SCL)工具安装特定版本的GCC,SCL允许在同一系统上运行多个版本的软件包,而不会干扰系统默认版本。
首先安装SCL仓库:
sudo yum install centos-release-scl -y
然后查看可用的GCC版本:
sudo yum list gcc*
在输出中找到类似devtoolset-3-gcc的包名,其中devtoolset-3对应GCC 4.9,而GCC 5.1通常位于devtoolset-4中,若需确认具体版本,可通过以下命令查看:
sudo yum info devtoolset-4-gcc
安装GCC 5.1及依赖
确认可用版本后,安装devtoolset-4中的GCC及相关组件:
sudo yum install devtoolset-4-gcc devtoolset-4-gcc-c++ -y
该命令会安装GCC 5.1及其C++编译器,若需开发Fortran项目,可额外安装devtoolset-4-gcc-gfortran,安装完成后,默认系统中GCC版本仍为系统默认值,需通过SCL激活临时使用GCC 5.1:

scl enable devtoolset-4 bash
激活后,可通过以下命令验证版本:
gcc --version
输出应显示gcc (GCC) 5.1.0,若希望永久生效,可将以下内容添加到~/.bashrc文件末尾:
source /opt/rh/devtoolset-4/enable
执行source ~/.bashrc使配置生效。
从源码编译安装GCC 5.1
若SCL中未提供GCC 5.1,或需要更灵活的定制,可从源码编译安装,首先下载GCC 5.1的源码包(需提前安装wget):
wget https://gcc.gnu.org/pub/gcc/releases/gcc-5.1.0/gcc-5.1.0.tar.gz tar -xvf gcc-5.1.0.tar.gz cd gcc-5.1.0
安装编译所需的依赖:
sudo yum install gcc gcc-c++ gmp-devel mpfr-devel libmpc-devel -y
配置编译选项并安装:
./configure --prefix=/usr/local/gcc-5.1.0 --enable-languages=c,c++ make -j$(nproc) sudo make install
编译过程可能较耗时,建议在多核CPU系统上使用-j参数加速,安装完成后,创建软链接到系统路径:
sudo ln -sf /usr/local/gcc-5.1.0/bin/gcc /usr/local/bin/gcc-5.1 sudo ln -sf /usr/local/gcc-5.1.0/bin/g++ /usr/local/bin/g++-5.1
可通过gcc-5.1 --version验证安装。

环境变量配置与版本管理
为避免与系统默认GCC冲突,建议通过环境变量指定路径,在~/.bashrc中添加:
export PATH=/usr/local/gcc-5.1.0/bin:$PATH export LD_LIBRARY_PATH=/usr/local/gcc-5.1.0/lib64:$LD_LIBRARY_PATH
若需切换GCC版本,可使用update-alternatives工具(需先安装sudo yum install alternatives -y):
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 40 sudo update-alternatives --install /usr/bin/gcc gcc /usr/local/bin/gcc-5.1 60 sudo update-alternatives --config gcc
根据提示选择默认GCC版本。
常见问题与解决方案
- 依赖缺失:编译安装时若提示缺少
gmp、mpfr等库,需通过yum安装对应开发包。 - 版本冲突:若系统中已存在多个GCC版本,确保编译时使用
--prefix指定安装路径,避免覆盖默认版本。
相关问答FAQs
Q1: 如何在CentOS 7上永久切换到GCC 5.1?
A1: 通过SCL安装GCC 5.1后,将source /opt/rh/devtoolset-4/enable添加到~/.bashrc或/etc/profile中,或使用update-alternatives设置默认版本。
Q2: 安装GCC 5.1后,如何编译支持C++11的程序?
A2: 使用-std=c++11参数指定标准,g++ -std=c++11 test.cpp -o test,若需检查支持情况,运行g++ -std=c++11 -v查看编译器配置。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复