libzerodj — the C SDK for the Drift Zero DJ hardware. Cross-compiles from a development host to aarch64-linux-gnu and is linked into drift-os.
clangandlld(the toolchain forces-fuse-ld=lld)cmake≥ 3.23ninja
No aarch64 system libraries are needed on the host — everything resolves against the in-tree sysroot/.
From the repo root:
./scripts/build.shThis configures CMake with cmake/toolchain.cmake (Ninja, Release) into ./build/ and produces build/libzerodj.a. The first invocation configures; subsequent invocations only build.
Flags:
./scripts/build.sh -c— clean rebuild (--clean-first).- Override the compiler with
-DCUSTOM_CLANG_PATH=/path/to/clangwhen invoking CMake directly.
After building, publish headers and the static library into the sysroot for downstream consumers:
./scripts/update_sysroot.shCopy runtime resources (zero_atlas-32bit.bmp, device.db) into a drift-os tree:
./scripts/install.sh <path-to-drift-os/resources/zero-externals>Push resources to a connected device over zmodem:
./scripts/sz.sh <serial-tty>