在 CentOS 上使用 gcc 编译慢,通常不是 gcc 本身“弱”,而是环境、配置或用法导致。下面按最常见原因 → 对应解决办法来说明。
CentOS 7 默认 gcc 是 4.8.5,CentOS 8 是 8.x,都偏旧:
✅ 解决
# CentOS 7
yum install centos-release-scl
yum install devtoolset-11
scl enable devtoolset-11 bash
# 或 gcc 12
yum install devtoolset-12
很多人直接:
make
这只会用 1 个 CPU 核
✅ 解决
make -j$(nproc)
或
make -j8
#include <bits/stdc++.h>一个 .cpp 可能展开 几万行代码
✅ 解决
include what you use-O2 / -O3
优化越高级:
-O3 -march=native✅ 建议
-O0 -g-O2编译是 大量小文件读写
✅ 解决
tmpfsmkdir /dev/shm/build
cd /dev/shm/build
CentOS 默认:
✅ 检查
getenforce
systemctl status auditd
ccache 能快 3–10 倍,但:
✅ 开启
yum install ccache
export CC="ccache gcc"
export CXX="ccache g++"
编译大项目吃内存
✅ 检查
free -h
top
gcc --version
nproc
free -h
make -j
CentOS 上 gcc 编译慢,90% 是:老 gcc + 单线程 + 头文件多 + 磁盘慢
如果你愿意,可以告诉我:
我可以直接给你最优编译参数组合。