1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-09-11 08:50:45 +03:00
Files
mariadb-columnstore-engine/BUILD.md
2025-07-25 14:46:56 +01:00

73 lines
2.3 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## Checking out the source
MariaDB Columnstore (MCS) is not meant to be built independently outside of the MariaDB server. Therefore you need to checkout the [server](https://github.com/MariaDB/server) code as a first step.
You can clone the MariaDB server repository from GitHub using a SSH connection:
```bash
git clone git@github.com:MariaDB/server.git
```
or via HTTPS:
```bash
git clone https://github.com/MariaDB/server.git
```
(Note, that if you are a first time contributor and dont have any access rights to the server repository, you might want to create a fork of the MariaDB server repository, if you also want to contribute to the server and not only to MCS.)
MariaDB server contains many git submodules that need to be checked out with:
```bash
git submodule update --init --recursive
```
The submodule initialisation also checks out this MCS repository. Again, if you dont have developer rights to the MCS repository and want to contribute, you should create a fork of this repository and change the remote of the already cloned MCS repository.
If you want to switch the remote to your fork, you can achieve this by:
```bash
cd server/storage/columnstore/columnstore
git remote -v #this should return: origin https://github.com/mariadb-corporation/mariadb-columnstore-engine.git (fetch)
git remote remove origin
git remote add origin <HTTPS-URL-TO-YOUR-FORK>
```
As a next step check out the MCS branch you want to build and install:
```bash
cd server/storage/columnstore/columnstore
git checkout <columnstore-branch-you-want-to-build>
git config --global --add safe.directory `pwd`
```
## Build
The `bootstrap_mcs.sh` script can now do **two** main things:
1. **Build & install** ColumnStore into your system
```bash
cd server/storage/columnstore/columnstore
sudo build/bootstrap_mcs.sh --install-deps
```
2. **Build native OS packages** (RPM or DEB)
```bash
cd server/storage/columnstore/columnstore
sudo build/bootstrap_mcs.sh --install-deps --build-packages
# → find your .rpm/.deb files in the build directory
```
Note: Packages can be built only for the OS youre on—for so for example if you are running --build-packages on Rocky Linux it will produce RPMs for Rocky.
You can see the full options list in the script itself
> **Supported distros:**
> Ubuntu:20.04/22.04/24.04, Debian:11/12, Rocky Linux:8/9