System Requirements
Reference version: 1.0
Implementation snapshot: SekuraJS source revision 6dd5716a8f3bcf29d27ae9ca64800bb517601236.
This page separates the initial distribution targets from requirements for building from source. It reflects the current project configuration; the source tree does not contain release packages or a verified release platform matrix.
Initial distribution targets
The initial launch targets are:
| Operating system | Architecture | Distribution status |
|---|---|---|
| Windows | x64 (x86-64) | Initial target |
| macOS | Apple Silicon (arm64) | Initial target |
| Other operating systems or architectures | By request | Not an initial distribution target |
These are the requested launch targets. The current CMake configuration does not declare platform-specific release presets, and this source snapshot alone does not establish that packaged binaries have been built, tested, or published for either target. Platform compatibility should be claimed for a release only after its package and included runtime dependencies have been checked on that platform.
Build from source
The current CMake project requires:
- CMake 3.16 or newer;
- a C++17 compiler and standard library;
- ZLIB development files;
- libsodium development files, including
sodium.hand the sodium library.
The project uses find_package(ZLIB REQUIRED) and fails configuration if libsodium headers or library are not found. It does not pin minimum ZLIB or libsodium versions in CMake. On macOS, the current configuration searches /opt/homebrew and /usr/local for libsodium.
Build the two command-line programs with:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build --parallel
The build outputs sekura-js and sekura-sjv. Tests are built by default when BUILD_TESTING is enabled; they are placed in build/tests. CVC5 is detected optionally for the cross-check test path and is not required to configure or build the tools.
Runtime tools for verification
Z3 must be installed and available on PATH when using SJV proof commands and verify-sjp replay. The project starts the solver as an external process; it does not build or include the Z3 executable in this repository.
CVC5 is optional. It is needed only when verify-sjp is invoked with --cross-check-cvc5; then the cvc5 executable must be available on PATH.
sekura-js check and compile do not require a running MR8 simulator. The generated SOBJ targets Memora8/MR8, but executing it is outside this toolchain and requires a separate simulator or target environment.
Runtime libraries and distribution packaging
The SJV implementation uses ZLIB for SJP containers and libsodium for Ed25519 signing and verification. The current CMake build links these external libraries; it does not vendor them in the repository. Dynamically linked builds require compatible runtime libraries to be available to the operating system loader.
The repository does not currently define a Windows or macOS release packaging recipe that bundles these libraries. A platform release must document whether it ships the required runtime libraries or expects them to be installed separately, and must retain the third-party license notices for any redistributed components. See Third-Party Notices for the dependencies recorded for the source snapshot.
Not required by this repository
- CVC5 is not required unless the optional cross-check is requested.
- An MR8 simulator is not built or required for compiling SJS or running the verifier’s proof/replay commands.
- VS Code and Node.js are relevant to the separate
sekura-sjsextension workflow, not to the two native CLI executables described here.
For build and first-use commands, see Getting Started. For optional and mandatory library usage, see Third-Party Notices.