Hello again, Rustaceans.

I’m here to announce yet another drop-in Cargo replacement: cross .

With cross build you can cross compile your crate to any of these 13 targets without having to install a cross toolchain or cross compiled libraries on your host system, or having to manually invoke rustup target add .

cross build will provide the cross compilation environment, a Docker image, that produces the most portable binary possible (i.e. that has the lowest glibc version requirement possible). This environment also includes the latest OpenSSL, already cross compiled for the target, so you can actually cross compile a crate that depends on the openssl crate (like Cargo!) for e.g. ARM with a single cross build command.

Even cooler is the cross test command, which tests your crate for the given target. That’s right, cross will cross compile your tests for e.g. PowerPC and then run them on your x86_64 machine using QEMU under the hood. QEMU doesn’t even need to be installed on the host system!

cross works on x86_64 Linux machines, which means you can use it with Travis to continuously test your crate for a variety of architectures. Here’s a sample .travis.yml file to get you started.