cross
sabinokaku
Our great sponsors
cross | sabinokaku | |
---|---|---|
3 | 2 | |
2,604 | 8 | |
- | - | |
6.4 | 0.0 | |
over 2 years ago | about 2 years ago | |
Rust | Rust | |
GNU General Public License v3.0 or later | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
cross
-
What beginner-level projects can I do now that I've just started learning rust?
The -musl targets for Linux make it easy to dodge the need to compile against the oldest glibc you want to support if your project is pure Rust and cross is a Docker wrapper which aims to make cross-targeting in other scenarios as easy as with Go.)
-
What use cases does Rust cover better than Go?
...though, funny enough, if you have enough experience with Rust to not get bogged down in the details and you use cross to work around Rust's "take your time but get it right" approach to cross-building, Rust is often better at little CLI tools, purely because of how valuable it is to be able to teach the type system to check so many invariants at compile time.
-
Need help building a Rust program for other distros of Linux
Another thing to keep in mind for if just using the musl target with your usual setup is insufficient (eg. if you need to use a crate like ttspico which statically links some C code) is cross, which makes it really easy to use Docker to build and run tests.
sabinokaku
-
What use cases does Rust cover better than Go?
For example, here I've hooked into __libc_start_main as part of an injector that injects the .NET runtime into a running process' address space. I could have done this with C or C++ with a little bit less safety and some more annoying package management, but I'm not aware of any way that Go gives me such low level access. And of course firing up the Go runtime within an existing address space when its only job is to launch another runtime is a bit of a dealbreaker here as well.
- sabinokaku - Minimal framework for injecting .NET into processes
What are some alternatives?
saito-rust - A high-performance (reference) implementation of Saito in Rust
miri - An interpreter for Rust's mid-level intermediate representation
rust-how-do-i-start - Hand curated advice and pointers for getting started with Rust
Reloaded.Core.Bootstrap - Tiny Visual C++ library/example that allows you to inject CoreCLR (the .NET Core Runtime) into the current unmanaged process and execute a .NET library.
cargo-flash - a cargo extension for programming microcontrollers
Rustlings - :crab: Small exercises to get you used to reading and writing Rust code!
nexus-repository-cargo - Nexus Repository Cargo Format
TinyGo - Go compiler for small places. Microcontrollers, WebAssembly (WASM/WASI), and command-line tools. Based on LLVM.
static-web-server - A cross-platform, high-performance and asynchronous web server for static files-serving. ⚡
alacritty - A cross-platform, OpenGL terminal emulator. [Moved to: https://github.com/alacritty/alacritty]
black-hat-rust - Applied offensive security with Rust - https://kerkour.com/black-hat-rust
cli - GitHub’s official command line tool