Skip to content
IceRootDocs

Build from source

These commands build and check Heartwood’s current development workspace. They do not start a mainnet or testnet node.

The ordinary checks use committed test vectors and need only the Rust toolchain. Regenerating the reference vectors also needs Docker and the reference setup described below.

Terminal window
git clone https://github.com/iceroot-network/heartwood-core.git
cd heartwood-core
make check

make check builds the workspace, runs Clippy with warnings treated as errors, checks formatting, runs tests, and checks release feature isolation.

Use make help to see the targets supplied by your checkout. Follow the repository’s toolchain requirement if it changes.

Terminal window
cargo test -p heartwood-crypto --locked
cargo test -p heartwood-crypto --locked --all-features

The first checks the ordinary build. The second enables the test features needed for every vector class.

The oracle uses iceroot-network/solar-core-ref at the configured tag, currently s1-ref-v2. The default checkout location is ../solar-core-ref.

Terminal window
make oracle-image

Building the image needs network access. The reference runtime runs without network access. Local oracle comparison additionally requires Node 18.20.8, pnpm 6.32.11, and Python 3.10 for the reference’s native dependencies; use the repository’s exact recipe.

Do not copy those legacy reference requirements into the website or wallet toolchain. They belong to the compatibility oracle.

Testing and compatibility →