Skip to content

Install Kelvra

The fastest path is a tested runtime archive from GitHub. Each archive contains both the kelvra command and the matching kelvra-lsp language server.

  1. Open Kelvra Releases and choose the latest runtime release.

  2. Download the archive for your platform and the accompanying SHA256SUMS file. Runtime CI currently builds archives for:

    PlatformArchitecture
    Linuxx86-64
    macOSApple Silicon (arm64)
    Windowsx86-64
  3. Verify the archive checksum, extract it, and move or add its bin directory to your PATH.

    Terminal window
    sha256sum kelvra-*.tar.gz
    tar -xzf kelvra-*.tar.gz

    Compare the printed digest with the matching entry in SHA256SUMS before using the extracted binaries.

  4. Confirm that the runtime is available:

    Terminal window
    kelvra --version
    # kelvra 0.2.0 (native ABI 3)

Install Kelvra Developer Tools from the Visual Studio Marketplace, or search that exact name in VS Code’s Extensions view. Platform-specific Marketplace packages already contain a tested kelvra-lsp; you do not have to configure a server path after a normal Marketplace install.

See VS Code and LSP for features, server discovery, settings, and troubleshooting.

Source builds require CMake 3.10 or newer, a C++17 GCC or Clang compiler, OpenSSL development files, and bash. SDL2 development files are optional and only needed for the official window package and its demos.

Terminal window
sudo apt-get install build-essential cmake libssl-dev
# Optional window package support:
sudo apt-get install libsdl2-dev

Clone the repository and build the default release configuration:

Terminal window
git clone https://github.com/kelvralang/kelvra
cd kelvra
./build.sh

The source tree currently produces build/interpreter, build/kelvra, and build/kelvra-lsp. Use build/kelvra for the public command-line interface; the interpreter name remains available for repository development and legacy scripts.

Useful development configurations include:

Terminal window
./build.sh --debug --asan
./build.sh --debug --ubsan
./build.sh --debug --asan --ubsan
./build.sh --release --profiling

Sanitizer builds cannot be combined with --lto, --pgo-generate, or --pgo-use.

Terminal window
kelvra run path/to/program.kel

From a source checkout:

Terminal window
./build/kelvra run path/to/program.kel

Running kelvra with no arguments starts the REPL. Use kelvra --help for the full project, package, registry, cache, and runtime command list.