你问得比较笼统,我先分几种常见情况说明一下 CentOS 上 GCC 的兼容性问题,你可以对照看看是哪一种。
CentOS 默认 GCC 版本通常较老(为了稳定性):
| CentOS 版本 | 默认 GCC |
|---|---|
| CentOS 6 | 4.4 |
| CentOS 7 | 4.8 |
| CentOS 8 | 8.x(已 EOL) |
| CentOS Stream 9 | 11+ |
✅ 解决方式:
# CentOS 7 安装高版本 GCC
yum install centos-release-scl
yum install devtoolset-9-gcc devtoolset-9-gcc-c++
scl enable devtoolset-9 bash
/lib64/libc.so.6: version `GLIBC_2.28' not found
✅ 解决:
libstdc++.so.6 可能不兼容查看依赖:
ldd your_program
strings /lib64/libstdc++.so.6 | grep GLIBCXX
混用不同 ABI 的库会崩溃或链接失败。
✅ 检查:
nm libxxx.so | grep cxx11
➡ 建议:
为了给你更精确的回答,可以告诉我:
我可以直接帮你定位并给解决方案。