Skip to main content

Docker path

The simplest way to run LandSandBoat is with the pre-built Docker image. You only need: No compiler or build toolchain is required.

Build-from-source path

The CI and official Docker image target Ubuntu 24.04 with GCC 14.Compiler
ToolMinimum version
GCC14 (g++-14)
Clang20 (clang-20) — alternative to GCC
Build tools
PackageNotes
cmake3.25 or later (required by CMakeLists.txt)
ninja-buildRecommended generator (cmake -G Ninja)
makeAlternative to Ninja
ccacheOptional, speeds up incremental builds
Runtime and development libraries
PackageNotes
libmariadb-dev-compatMariaDB C connector
libzmq3-devZeroMQ
libluajit-5.1-devLuaJIT
libssl-devOpenSSL
zlib1g-devzlib
binutils-devRequired on Linux
python3-devPython 3 headers
python3-venvVirtual environment for tools
Install all build dependencies on Ubuntu 24.04:
sudo apt-get update && sudo apt-get install --assume-yes --no-install-recommends \
    binutils-dev \
    ccache \
    cmake \
    g++-14 \
    libluajit-5.1-dev \
    libmariadb-dev-compat \
    libssl-dev \
    libzmq3-dev \
    make \
    ninja-build \
    python3-dev \
    python3-venv \
    zlib1g-dev
Set compiler alternatives (if needed):
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-14 100
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-14 100

Database

All installation paths require a running MariaDB instance. The LTS release is recommended.
ComponentRequirement
MariaDBLTS release (mariadb:lts Docker image, or system package)
Character setutf8mb4
Collationutf8mb4_general_ci
MariaDB must be started with:
--character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci

Python (tools)

The database management tool (tools/dbtool.py) requires Python 3. Install tool dependencies with:
pip install -r tools/requirements.txt
Key Python packages: mariadb, gitpython, pyyaml, colorama, zmq.

Build docs developers (and LLMs) love