Zinc ships as a shared library (Documentation Index
Fetch the complete documentation index at: https://mine-27913f41.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
libzinc_core) with per-language adapter packages. Build the core, then install the adapter for your language.
Prerequisites
- Rust 1.82 or later
- A C compiler toolchain (Xcode on macOS, build-essential on Linux)
- For adapter packages: the corresponding language runtime
Build the core
The core library is a Rust crate at thecore/ directory. It compiles to a cdylib that every language adapter loads at runtime.
- Linux:
core/target/release/libzinc_core.so - macOS:
core/target/release/libzinc_core.dylib
include/zinc.h via cbindgen. This header is the C ABI contract. All adapters derive their FFI bindings from it.
By language
Library path
All adapters expectlibzinc_core.{so,dylib} on the library search path. The easiest approach is to place the compiled library in a standard location:
LD_LIBRARY_PATH (Linux) or DYLD_LIBRARY_PATH (macOS).
Platform notes
- Linux requires glibc 2.17 or later. The notify/wait backend uses the
futexsyscall. - macOS uses an adaptive spin-loop for wait (the
ulockAPI is private on Darwin).
