CentOS上构建C++持续集成环境步骤
1. 准备基础环境
在开始配置CI之前,需确保CentOS系统安装了必要的开发工具和依赖库:
# 更新系统
sudo yum update -y
# 安装基础开发工具链(gcc/g++、make、cmake等)
sudo yum groupinstall "Development Tools" -y
sudo yum install cmake git wget -y
# (可选)安装代码编辑器(如Visual Studio Code)
sudo yum install -y epel-release
sudo yum install -y code
这些工具是C++项目编译、测试的基础,确保后续步骤能正常执行。
2. 选择并安装持续集成工具(以Jenkins为例)
Jenkins是开源的自动化服务器,适合C++项目的持续集成,以下是安装步骤:
# 添加Jenkins官方仓库
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
# 安装Jenkins及依赖(Java)
sudo yum install jenkins java-11-openjdk-devel -y
# 启动Jenkins并设置开机自启
sudo systemctl start jenkins
sudo systemctl enable jenkins
安装完成后,访问http://<服务器IP>:8080,按照提示输入初始管理员密码(位于/var/lib/jenkins/secrets/initialAdminPassword)完成配置。
3. 配置Jenkins插件
Jenkins需要安装以下插件以支持C++项目:
- Git Plugin:用于从Git仓库拉取代码;
- C/C++ Plugin:提供C++项目的构建和测试支持;
- Pipeline Plugin:用于创建Pipeline脚本(可选,但推荐)。
配置路径:Manage Jenkins → Manage Plugins → Available,搜索插件名称并安装。
4. 编写C++项目的构建脚本
在项目根目录下创建CMakeLists.txt(C++项目的构建配置文件)和构建脚本build.sh:
- CMakeLists.txt(示例):
cmake_minimum_required(VERSION 3.6) project(MyCppProject) set(CMAKE_CXX_STANDARD 14) # 设置C++标准 add_executable(MyApp main.cpp) # 定义可执行文件 - build.sh(编译和测试脚本):
#!/bin/bash mkdir -p build # 创建构建目录 cd build cmake .. # 生成Makefile make # 编译项目 ctest # 运行单元测试(需提前配置CTest)
确保build.sh有执行权限:
chmod +x build.sh
5. 创建Jenkins Job
在Jenkins中创建一个新的Freestyle Project(或Pipeline Job),配置如下:
- Source Code Management:选择
Git,输入项目仓库URL(如GitHub、GitLab),并配置凭证(SSH或用户名/密码); - Build Triggers:选择
Poll SCM(定期检查代码变更,如H/5 * * * *表示每5分钟检查一次)或Webhook(实时触发,需配置Git仓库的Webhook地址); - Build:添加
Execute shell步骤,输入构建命令:./build.sh - Post-build Actions:配置构建结果处理,如
Publish JUnit test result report(生成测试报告,需项目输出junit.xml文件)、Email Notification(发送构建结果邮件)。
6. 运行和优化CI流程
- 保存Job配置后,点击
Build Now手动触发一次构建,查看构建日志确认是否成功; - 若需优化,可添加以下步骤:
- 代码质量检查:安装
Cppcheck或Clang-Tidy插件,在Build步骤中添加代码扫描命令(如cppcheck --enable=all .); - 容器化部署:使用Docker打包应用,在Pipeline中添加
docker build和docker push步骤(需提前配置Docker Hub凭证); - 并行测试:将测试任务拆分为多个并行Job,提高构建效率。
- 代码质量检查:安装
通过以上步骤,即可在CentOS上构建一个基本的C++持续集成环境,实现代码自动拉取、编译、测试和结果通知。根据项目需求,可进一步扩展流程(如集成部署、静态代码分析等)。
以上就是关于“CentOS上如何构建C++持续集成环境”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm