Cross Compiling Rust Binaries with Github Actions

This page summarizes the projects mentioned and recommended in the original post on /r/rust

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • cross

    “Zero setup” cross compilation and “cross testing” of Rust crates

  • When people refer to cross in actions, they usually use cross to build things through a Docker container, avoiding the need for linking. sysinfo uses this, for example. I also use this in my own CI workflow, if you want another reference.

  • bottom

    Yet another cross-platform graphical process/system monitor.

  • When people refer to cross in actions, they usually use cross to build things through a Docker container, avoiding the need for linking. sysinfo uses this, for example. I also use this in my own CI workflow, if you want another reference.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • cargo

    Discontinued 📦 GitHub Action for Rust `cargo` command (by actions-rs)

  • The cargo action comes with a built-in argument to use cross for you automatically as well.

  • Cargo

    The Rust package manager

  • Can you add a note that setting RUSTFLAGS can break linking in some circumstances? I don't think it is the same linking issue mentioned in your post, but it should be mentioned in case someone else stumbles into it. A few weeks ago, I was tearing my hair out over Actions CI failing in the link stage for no apparent reason. I happened upon https://github.com/rust-lang/cargo/issues/7984 which casually mentioned that setting RUSTFLAGS (I had used env: RUSTFLAGS: -D warnings in my workflow file) will overwrite linker scripts.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts