在 CentOS 上“装不上 C++ 库”通常不是系统不支持,而是源、权限、命令或库名不对。下面按最常见原因给你排查清单。
常见情况:
不同情况装法不一样。
很多人以为 gcc 装了就有 C++,其实没有。
# 查看是否有 g++
g++ -v
如果没有:
sudo yum install gcc-c++
✅ CentOS 7 / 8 都可以
CentOS 8 已 EOL,默认源失效。
sudo yum clean all
sudo yum makecache
改用 vault 源:
sudo sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sudo sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
sudo yum makecache
或直接换:
你是否是 root?
whoami
不是 root:
sudo yum install xxx
CentOS 里 C++ 相关库常见名:
| 目的 | 包名 |
|---|---|
| C++ 编译器 | gcc-c++ |
| 标准库 | libstdc++ |
| Boost | boost-devel |
| CMake | cmake |
| 开发头文件 | xxx-devel |
⚠️ 开发一定要装 -devel
比如:
解决:
gcc --version
太老就装 devtoolset:
sudo yum install centos-release-scl
sudo yum install devtoolset-11
scl enable devtoolset-11 bash
Minimal 版啥都没有:
sudo yum groupinstall "Development Tools"
把下面信息发我,我可以直接帮你定位:
cat /etc/centos-release)例如:
我执行
yum install libboost报错:No package available
我可以一步到位告诉你该装什么。