关于开发环境:如何设置-Databend-开发环境
工欲善其事,必先利其器。在开启 Databend 奉献之旅前,一起来配置适宜本人的开发环境吧。疾速装置 疾速装置为不便开发者疾速建设开发环境,Databend 保护了一个简单的 shell 脚本,位于 scripts/setup/dev_setup.sh。只需执行一条指令即可实现开发环境配置: $ make setup -d留神:此过程会辅助装置局部 python 环境,可能会对本地原开发环境造成影响,倡议事后执行以下命令以创立并启用专属虚拟环境。 $ python -m venv .databend$ source .databend/bin/activate如果遇到依赖缺失问题,能够参考「分步装置 - 测试必备」这一部分的内容装置。分步装置 分步装置这里以 Fedora 36 为例,思考到不同零碎和发行版之间的差别,你可能须要自行装置 gcc,python 和 openssl。 1.装置 Rust toolchain: 举荐应用 rustup 来治理 Rust toolchain ,参考 https://rustup.rs/ 进行装置。对于 MacOS 和 Linux 用户,执行: $ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | shDatabend 通常应用最新公布的 nightly 工具链进行开发,相干信息记录在 rust-toolchain.toml 中。Rustup 会在应用时对工具链进行主动重载,装置时只需默认配置。 $ cargo buildinfo: syncing channel updates for 'nightly-2022-05-19-x86_64-unknown-linux-gnu'info: latest update on 2022-05-19, rust version 1.63.0-nightly (cd282d7f7 2022-05-18)2.装置必备依赖: 以下列出了一些装置构建和测试必备依赖的关键步骤,阐明及报错信息以正文模式出现。 构建必备: # common-hive-meta-store 须要,thrift not found$ sudo dnf install thrift# openssl-sys 须要,Can't locate FindBin.pm, File/Compare.pm in @INC$ sudo dnf install perl-FindBin perl-File-Compare# prost-build 须要,is `cmake` not installed?# The CMAKE_CXX_COMPILER: c++ is not a full path and was not found in the PATH.,装置 clang 时也会装置 gcc-c++ 和 llvm$ sudo dnf install cmake clang测试必备: # 功能测试和后续体验须要$ sudo dnf install mysql# 蕴含目前功能测试和 lint 须要的所有 Python 依赖$ cd tests$ pip install poetry$ poetry install$ poetry shell# sqllogic 测试须要(蕴含在下面步骤中,按需选用)(tests) $ cd logictest$ pip install -r requirements.txt# fuzz 测试须要(tests) $ cd fuzz$ pip install -r requirements.txtLint 必备: # taplo fmt 须要$ cargo install taplo-cli编辑器 - Visual Studio Code 拜访 https://code.visualstudio.com ,装置 Visual Studio Code 。1.插件举荐rust-analyzer 作者:The Rust Programming Language为 Visual Studio Code 提供 Rust 语言反对。crates 作者:Seray Uzgur帮忙 Rust 开发者治理 Cargo.toml 中的依赖。仅反对起源为 crates.io 的依赖。CodeLLDB ...