在 CentOS 上“卸载旧 gcc”要分几种情况,不同安装方式处理方式不同。下面按常见场景说明。
gcc --version
rpm -qa | grep gcc
常见包名:
gccgcc-c++gcc-gfortranlibgccsudo yum remove gcc gcc-c++ gcc-gfortran
或(CentOS 8+):
sudo dnf remove gcc gcc-c++ gcc-gfortran
⚠️ 注意:
不要卸载libgcc,它是系统核心依赖,卸载会导致系统异常。
如果通过 centos-release-scl 安装了 devtoolset:
sudo yum remove devtoolset-7-gcc*
sudo yum remove devtoolset-9-gcc*
查看已安装 SCL 包:
scl --list
卸载示例:
sudo yum remove devtoolset-8\*
如果是你自己 ./configure && make && make install 装的:
sudo make uninstall
(仅部分版本支持)
sudo rm -rf /usr/local/gcc*
sudo rm -rf /usr/local/bin/gcc
sudo rm -rf /usr/local/lib/gcc*
然后清理环境变量:
vim ~/.bashrc
# 删除 PATH 中指向旧 gcc 的行
sudo yum install centos-release-scl
sudo yum install devtoolset-11-gcc devtoolset-11-gcc-c++
scl enable devtoolset-11 bash
sudo dnf install gcc gcc-c++
✅ 系统自带 gcc 不建议完全删除
✅ 多个 gcc 可共存,用 alternatives 或 scl 切换
❌ 不要删 glibc、libgcc
如果你能告诉我:
我可以给你精确命令。