1. Requirements
In order to build a Nerodia project, all of the following are required:
-
Lean 4.33 or greater
-
CPython 3.14 or greater (shared; not free-threaded)
-
A C compiler which supports both (e.g., recent GCC or Clang; MSYS2's CLANG64 toolchain)
A standard CPython distribution should usually be sufficient.
uv and the python.org installers provide the necessary components.
Some system package managers may also require a separate development package
(e.g., python3-dev).
Nonetheless, it is possible to write a Nerodia project without Python or a C
compiler. These elements are only required to build and link the Python extension
(or to use precompileModules) and thus could be delegated to a CI (e.g.,
GitHub Actions) that can vendor these properly. Similarly, the Python extension
can be distributed as a prebuilt binary (i.e., wheel), so users of the extension
do not need Lean or a C compiler.