以下是GCC在CentOS中的使用技巧:
安装GCC:
sudo yum install gcc gcc-c++ make # 安装基础编译工具链
或通过Devtoolset安装特定版本(如GCC 9):
sudo yum install centos-release-scl
sudo yum install devtoolset-9-gcc*
scl enable devtoolset-9 bash # 临时切换版本
手动编译安装:
下载GCC源码,配置时指定安装路径(如/usr/local/gcc-11.2.0),并添加环境变量:
export PATH=/usr/local/gcc-11.2.0/bin:$PATH
常用优化选项:
-O2:平衡优化(推荐默认使用)。-O3:激进优化(可能增加代码体积)。-march=native:针对当前CPU架构优化。-flto:启用链接时优化(LTO)。并行编译:
使用make -j$(nproc)并行编译,提升多核CPU利用率。
缓存加速:
安装ccache缓存编译结果,减少重复编译时间:
sudo yum install ccache
export PATH="/usr/lib/ccache:$PATH"
GDB调试:
编译时添加-g选项生成调试信息,使用GDB设置断点、单步执行:
gcc -g main.c -o main
gdb ./main
多源文件编译:
gcc -c file1.c file2.c生成目标文件,再链接gcc file1.o file2.o -o program。gcc file1.c file2.c -o program(适合小型项目)。环境变量配置:
通过export临时切换GCC版本或指定库路径,例如:
export CC=/usr/bin/gcc-7 # 临时使用GCC 7
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH # 指定库路径
libm需-lm),检查yum依赖包。rpm -qa | grep gcc查看已安装版本,用devtoolset隔离不同版本。chmod +x program)。-static选项(如gcc -static main.c -o main)。__atomic_add_fetch)实现线程安全。参考来源:[1,2,3,5,6,7,8,9,10,11]