Installation guide
You will need Python 3.13, uv, git, and the local build tools required by
the Python extension. The package builds and embeds its bundled simulation
engine, so you do not need to install a separate runtime library before using
Cimba Python.
Linux
On Linux, clone the repository, initialize submodules, and let uv create the
project environment:
git clone <repo-url> cimba_python
cd cimba_python
git submodule update --init --recursive
uv sync
On Ubuntu or WSL, install the usual native build packages first:
sudo apt install build-essential nasm libhdf5-dev
Use uv run for commands that should execute inside the project
environment.
Windows
On Windows, install Python 3.13, uv, git, NASM, and a supported compiler
toolchain. Then run the same project commands from a developer shell:
git clone <repo-url> cimba_python
cd cimba_python
git submodule update --init --recursive
uv sync
If Windows Security blocks build tools from writing into the project directory,
allow the compiler, assembler, and Python build tools. If imports fail because
another application provides incompatible runtime DLLs earlier on PATH,
adjust PATH so the active compiler environment comes first.
Verifying your installation
Verify that Python can import the package:
uv run python -c "import cimba; print(cimba.native_version())"
If all goes well, this prints a version such as:
3.0.0-beta
Run the test suite with:
uv run pytest
The tests build and execute small cimba.sim models covering imports,
logging, declarations, queues, resources, pools, stores, priority queues,
conditions, random draws, process signals, timers, dynamic processes, events,
and parallel experiments.