CentOS下C++开发环境如何搭建
在CentOS系统上搭建C++开发环境,首先更新系统软件包缓存,其次安装DevelopmentTools开发工具组,然后安装gcc和gcc-c++编译器,建议同时安装Vim编辑器、GDB调试器和CMake构建工具,最后编写hello.cpp程序并编译运行,以此验证整个开发环境配置是否成功。
聊到在CentOS上搭建C++开发环境,其实流程并不复杂,但有几个细节值得注意——比如包的兼容性、编译器版本、编辑器的选择,每一步如果踩坑都挺耽误时间。下面这份指南,把从零到能跑起hello world的完整链路拆开讲,每个环节都给出具体命令和注意事项,跟着走就行。
一、更新系统包
在动手安装开发工具之前,先做一件基础工作——更新系统包。这一步能确保后续安装的软件包不会因为依赖版本过旧而出问题,属于“磨刀不误砍柴工”。

sudo yum update -y
二、安装基础开发工具组
CentOS 提供了一个叫“Development Tools”的包组,里面包含了GCC编译器、Make、Automake 等一系列基础开发组件。装了这个组,C++开发最核心的依赖就齐了。
sudo yum groupinstall "Development Tools" -y
三、安装GCC/G++编译器
C和C++两个编译器都需要装,名字分别是 gcc 和 gcc-c++。装完记得用 --version 检查一下版本号,确认安装成功。
sudo yum install gcc gcc-c++ -y
gcc --version # 查看GCC版本
g++ --version # 查看G++版本
四、安装代码编辑器(可选但推荐)
编辑器选对了,编码效率能翻倍。根据你的操作习惯,可以在下面两种方案中选一个:
- Vim(终端党首选):轻量、无图形依赖,服务器上也能用。
sudo yum install vim -y
- Visual Studio Code(图形界面,功能丰富):支持插件、调试、智能提示。安装分两步:
- 从VSCode官网下载 .rpm 格式安装包;
- 用
sudo rpm -ivh code-*.rpm安装; - 打开VSCode,进入扩展市场,搜索并安装“C/C++”扩展(Microsoft发布)。
五、安装调试工具
GDB 是 Linux 下最常用的 C++ 调试器,排查段错误、逻辑问题都靠它。有备无患,装一个。
sudo yum install gdb -y
六、安装构建工具(可选但推荐)
CMake 是跨平台的构建工具,尤其适合管理大中型 C++ 项目的编译流程,能自动生成 Makefile。如果你打算做稍微正规一点的项目,强烈建议装上。
sudo yum install cmake -y
七、验证环境配置
这一步最直观——写一个简单的 hello.cpp 程序,编译并运行,确认整个链路畅通。
// hello.cpp
#include
int main() {
std::cout << "Hello, CentOS C++!" << std::endl;
return 0;
}
然后编译运行:
g++ -o hello hello.cpp # 编译生成可执行文件
./hello # 运行程序
如果终端输出 Hello, CentOS C++!,说明环境配置完全 OK。
八、可选扩展:安装其他开发库
实际项目往往需要用到网络、压缩、正则表达式等功能,装好对应的开发库(带有 -devel 后缀)能避免编译时找不到头文件的尴尬。
sudo yum install libxml2-devel libcurl-devel openssl-devel pcre pcre-devel zlib zlib-devel -y
九、可选扩展:安装集成开发环境(IDE)
如果你需要智能代码补全、重构、调试集成这些“重型武器”,可以考虑下面两款 IDE:
- CLion(付费,功能全面):下载安装后,进
File > Settings > Build, Execution, Deployment > CMake添加-DCMAKE_CXX_STANDARD=17(或你需要的 C++ 标准);然后在Toolchains中添加 Linux 工具链,默认使用系统 G++。 - Eclipse CDT(免费,开源):下载 Eclipse CDT 版本,安装后配置 GCC/G++ 编译器路径即可上手。
Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。
极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。
















