d1d3aabafd
Reviewed-on: http://gitea.kylinos.cn/innovation/kylin-code-distbuild-plugin/pulls/24 |
||
---|---|---|
.vscode | ||
distbuild/bin | ||
src | ||
.eslintrc.js | ||
.gitignore | ||
.vscodeignore | ||
CHANGELOG.md | ||
README.md | ||
package.json | ||
package.nls.json | ||
package.nls.zh-cn.json | ||
tsconfig.json | ||
webpack.config.js | ||
yarn.lock |
README.md
C/C++项目分布式编译支持
介绍
kylin-code-dist-compile是一款基于OpenKylin社区kylin-code的扩展插件,用于支持linux下大型C/C++项目进行分布式构建, 帮助开发人员提升大型项目的构建效率
分布式编译需要通过网络协同,所以分布式编译并不总是会提高整体的编译速度,只适合一定规模的软件项目。
支持功能
- 分布式构建图形化管理,支持编译机器增删改查。
- 支持克隆本地编译环境到编译机,使编译机环境与本地环境一致,从而避免因编译环境不一致导致的其它问题。
- 支持gcc、g++、clang编译器进行分布式编译。
- 只支持基于make,cmake,qmake的项目进行分布式构建。
目前使用本插件已经成功构建linux kernel5.6, opencv等项目
使用方法
1.修改tasks.json
已经配置过tasks.json的项目,开发人员需修改已配置好的tasks.json配置文件,将构建任务的type属性修改为"distbuild",例:
{
"version": "2.0.0"
"tasks": [
{
"label": "CmakeBuild",
"type": "distbuild", #修改为"distbuild"
"command": "cmake",
"args": [
"--build",
"${workspaceFolder}/build",
"--config",
"Debug",
"-j",
"10"
],
"options": {
"cwd": "${workspaceFolder}/build"
},
"problemMatcher": [],
"group": "build"
}
}
未配置过tasks.json的项目,开发人员可以手动添加一个type为"distbuild"的task,也可以通过Terminal->Configure Tasks,选择Distributed: template 自动生成一个task模板
2.添加编译机
点击kylin-code活动栏中分布式插件按钮,进入编译机管理界面,然后点击上方添加按钮添加一个编译机
由于需要同步本地的构建环境到编译机,所以添加编译机需要提供登录账号并且该账号需要具备sudo权限。
3.构建
点击kylin-code活动栏中分布式插件按钮,进入编译机管理界面,点击上方构建按钮,等待所有编译机启动成功后即可进行分布式构建
前提条件
- 仅支持linux系统,且源码机需要已安装编译和构建工具。
- 运行过程需要使用3632,3633两个网络端口。
- 编译机运行时会自动创建编译用户distccd。
- 部署过程需要使用SSH.