Type to search…

Cross

macOS

Tell Rustup to download the standard library for Linux.

shell
rustup target add x86_64-unknown-linux-musl

macOS doesn’t come with a linker that understands Linux binaries. Use musl-cross:

shell
brew install messense/macos-cross-toolchains/x86_64-unknown-linux-musl

You need to tell Cargo to use that specific linker when building for Linux.

Verify the binary name: Run ls /opt/homebrew/bin | grep musl to see the exact filename.

It is usually x86_64-unknown-linux-musl-gcc.

Create or edit .cargo/config.toml in your project folder:

yaml
[target.x86_64-unknown-linux-musl]
linker = "x86_64-unknown-linux-musl-gcc"
shell
cargo build --target x86_64-unknown-linux-musl --release

You're reading a preview.

Sign in with Google to read the full page. A Google account includes 5 free pages in total; students and teachers read their course pages without limit.

Sign in