That is a bit extreme but it demonstrates the lower bound.
There's a lot of things you can do to drop sizes, depending on the specifics of what you're doing and the tradeoffs you want to make.
Architecture support is where stuff gets tougher than size, to be honest. ARM stuff is well supported though, and is only going to get better in the future. The sort of default "get started" board is the STM32F4 discovery, which has 1 meg of flash and 192k of RAM. Seems like you're well above that.
FYI Rust (and Go) currently don’t work on the new Apple ARM macs.
https://github.com/rust-lang/rust/issues/73908 has the full details.
(Also, not to be super pedantic, but this (among other things) is partially why I said "and is only going to get better in the future," that is, the support is generally good (I know, I am literally doing some of that in another tab right now) but not flawless.)
Some probably won't support it years after it's available for actual commercial products...
Not sure also what you mean by giving it a rest, this is the first time I’ve made a comment on this point.
Update: thanks for editing your comment to be less offensive.
Someone else was saying the same thing in the comment you linked. I'll summarize it as:
"Rust takes time to port to a platform which is not even commercially available".
Especially in your case you'll find Rust to be a joy to use: you'll have way more confidence in your code being able to run for months without segfaults or memory leaks. And if you have a good understanding of the C memory model using Rust will be a breeze.
Worth noting that a lot of the code size is a constant addition that won't really scale with your program code.
I really hope that more enlightened vendors (hi Nordic Semiconductor) will start supporting Rust on their platforms.
99% of my development work these days is C with the target being Linux/ARM with a small-ish memory model. Think 64 or 128MB of DDR. Does this fit within Rust's world?
I've noticed that stripped binary sizes for a simple "Hello, World!" example are significantly larger with Rust. Is this just the way things are and the "cost of protection"? For reference, using rustc version 1.41.0, the stripped binary was 199KiB and the same thing in C (gcc 9.3) was 15KiB.