Go to file
linchaochao d1d3aabafd Merge pull request '修复编译机无法停止的bug以及多余错误导致的进程终止问题' (#24) from cc into master
Reviewed-on: http://gitea.kylinos.cn/innovation/kylin-code-distbuild-plugin/pulls/24
2022-12-07 16:57:56 +08:00
.vscode init project 2022-08-25 15:26:39 +08:00
distbuild/bin 修复编译机无法停止的bug以及多余错误导致的进程终止问题 2022-12-07 16:54:25 +08:00
src 修复编译机无法停止的bug以及多余错误导致的进程终止问题 2022-12-07 16:54:25 +08:00
.eslintrc.js 调整脚本目录结构 2022-08-31 15:02:41 +08:00
.gitignore 增加一些git忽略文件 2022-10-11 15:08:18 +08:00
.vscodeignore 调整了一下打包忽略文件列表;调整了几个显示文字内容 2022-10-11 15:02:51 +08:00
CHANGELOG.md init project 2022-08-25 15:19:13 +08:00
README.md 修复编译机无法停止的bug以及多余错误导致的进程终止问题 2022-12-07 16:54:25 +08:00
package.json 修复编译机无法停止的bug以及多余错误导致的进程终止问题 2022-12-07 16:54:25 +08:00
package.nls.json fix bug 2022-11-08 11:11:05 +08:00
package.nls.zh-cn.json fix bug 2022-11-08 11:11:05 +08:00
tsconfig.json 调整脚本目录结构 2022-08-31 15:02:41 +08:00
webpack.config.js 增加.node文件loader 2022-08-31 12:26:38 +08:00
yarn.lock init project 2022-08-25 15:19:13 +08:00

README.md

C/C++项目分布式编译支持

介绍

kylin-code-dist-compile是一款基于OpenKylin社区kylin-code的扩展插件用于支持linux下大型C/C++项目进行分布式构建, 帮助开发人员提升大型项目的构建效率

分布式编译需要通过网络协同,所以分布式编译并不总是会提高整体的编译速度,只适合一定规模的软件项目。

支持功能

  • 分布式构建图形化管理,支持编译机器增删改查。
  • 支持克隆本地编译环境到编译机,使编译机环境与本地环境一致,从而避免因编译环境不一致导致的其它问题。
  • 支持gcc、g++、clang编译器进行分布式编译。
  • 只支持基于makecmakeqmake的项目进行分布式构建。

目前使用本插件已经成功构建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.