ByConity 开发环境设置
我们的开发人员通过借助VS code中的一个叫做Dev Container的插件来连接到运行在虚拟机上的Debian 11 开发环境。所以我们也建议你用同样的方式来开发,这样能避免很多依赖和兼容的问题。了解更多可参考: official dev set。
启动 dev-env 镜像
首先
git clone https://github.com/ByConity/ByConity.git
# 注意要先进入到这个目录下
cd byconity/docker/debian/dev-env
# 获取最新的镜像
make pull
# 启动容器
make run
关联头文件
进入容器之后,先编译一下Byconity源码。这样做的目的就是让vscode能够正确识别并关联一下头文件。避免后续在vscode中调试时报很多头文件找不到的错误。下面是具体命令:
# 镜像中没有子模块,还需要手动把子模块都下到自己电脑上。确保自己网络通畅,并耐心等待。这个命令是在容器的根目录下执行的,就是刚进去时所在目录执行的,不需要切换目录。
git submodule update --init --recursive
# 生成一下编译要用的中间文件
cmake -S /root/ByConity -B build_dev
# 最后面2的含义是使用2个并行任务进行编译,需要根据自己机器资源调整,建议用内存大小除以4,如8g内存就用2个并行任务编译。
ninja -C build_dev clickhouse-server -j 2
编译ByConity
执行cmake run的目录,编译好的文件在 ${BYCONITY_SOURCE}/build_dev/program
配置vscode
编译构建后,可以开始vscode的环境配置,具体步骤:
- 安装dev container插件
- 连接到docker容器
- 解决头文件的问题
- 即使上面的编译过程中没有出错 vscode 也会报红提示找不到头文件,不用担心,它只是需要一些时间来识别头文件。
- 完成环境搭建