What problem does it solve?
Cross-compiling Rust projects is complex due to differing toolchains, linkers, C library compatibility, and embedded no_std constraints; this guide reduces that friction by describing how to add rustup targets, choose hermetic build tools, and configure project-level cargo settings for reproducible builds.
Core Features & Use Cases
- Add and manage rustup targets: instructions for listing and adding platform triples such as aarch64, x86_64-musl, wasm, and thumbv7 targets.
- Hermetic builds with cross and cargo-zigbuild: choose Docker-based cross for convenience or zig cc for zero-setup cross linking and precise glibc targeting.
- Project configuration: configure .cargo/config.toml linkers, runners, and rustflags for static musl binaries, WASM runners, or embedded probe-run setups.
- Embedded and bare-metal workflows: guidance for no_std projects, default targets, linker scripts, and release profile tuning for Cortex-M and RISC-V MCUs.
Quick Start
Use the rust-cross skill to add the aarch64-unknown-linux-gnu target, pick either cross or cargo-zigbuild for your workflow, and build a release artifact for that target.