crit 0.0.4

Rust cross-compiler
crit-0.0.4 is not a library.
Visit the last successful build: crit-0.0.14

crit: Rust cross-compiler

             .__  __
  ___________|__|/  |_
_/ ___\_  __ \  \   __\
\  \___|  | \/  ||  |
 \___  >__|  |__||__|
     \/

CAUTION

Work in progress.

EXAMPLE

$ cd example

$ crit

$ ls .crit
aarch64-apple-darwin
aarch64-linux-android
aarch64-unknown-linux-gnu
...

By default, crit builds in release mode (-- -r).

See crit -h for more options.

CRATE

https://crates.io/crates/crit

DOWNLOAD

https://github.com/mcandre/crit/releases

INSTALL FROM SOURCE

$ cargo install --path .

LICENSE

FreeBSD

RUNTIME REQUIREMENTS

Recommended

CONTRIBUTING

For more details on developing crit itself, see DEVELOPMENT.md.

FAQ

Help, some targets are broken?

First, check that your project is able to build with conventional cross or cargo commands. A project which does not compile, will naturally have difficulty cross-compiling.

Note that Rust introduces new, under-supported targets all the time. We try to keep up, but sometimes we miss a few of these. Regardless, you can declare which targets are disabled, by writing a custom pattern for the -e / --exclude-targets flag.

Some targets may lack stock support for the Rust std library. This is common for bare metal or embedded targets. For these kinds of targets, you have several strategies for resolution:

  • Provide a std implementation. Reach out to specialists for the specific target involved.
  • Avoid using the std library, in both your code, as well as the dependency tree. This is actually common practice for many Rust projects, as an proactive stance on embedded development support.
  • Disable undesired targets.

CREDITS

  • cross underlying cross-compiler system
  • cross-toolchains provisions cross Docker images
  • cubejs/rust-cross Docker images for additional cross targets
  • factorio generates Go application ports based on the standard Go toolchain
  • snek ports native C/C++ applications.
  • tug automates multi-platform Docker image builds
  • WASM provides a portable interface for C/C++ code.
  • xgo supports Go projects with native cgo dependencies.