Skip to main content
Version: 1.0.x

Building ByConity Source Code on Linux

Dependencies

To build ByConity from source code on Linux, you need to install the following components:

Git
CMake 3.17 or newer
Ninja
C++ compiler: clang-11 or clang-12
Linker: lld
Third-Party Library: openssl

Installing Dependencies

Example for Debian 11 (Bullseye):

sudo apt-get update
sudo apt-get install git cmake ccache python3 ninja-build libssl-dev

# install llvm 12
sudo apt install lsb-release wget software-properties-common gnupg # pre-requisites of llvm.sh
wget https://apt.llvm.org/llvm.sh
chmod +x llvm.sh
sudo ./llvm.sh 12

Compiling ByConity

git clone --recursive <ByConity Repository URL> byconity

cd byconity
mkdir build && cd build
export CC=clang-12
export CXX=clang++-12
cmake ..
ninja

The executable files will be located in the programs directory:

clickhouse-client    # byconity client
clickhouse-server # byconity server
clickhouse-worker # byconity worker
tso_server # byconity tso
daemon_manager # byconity daemon manager
resource_manager # byconity resource manager

Note: The repository URL <ByConity Repository URL> in the git clone command is a placeholder. You need to replace it with the actual URL of the ByConity repository. Additionally, the executable file names (clickhouse-client, clickhouse-server, etc.) mentioned at the end might not reflect the actual names used in the ByConity project. These are placeholders and should be replaced with the correct executable names provided by the ByConity project.