The extra fat in Rust binaries compiled with default settings is things like:
- the standard library
- jemalloc (this is no longer the default, but is still a factor in people's perception about binary size because it used to be)
- debug symbols
- unwinding support for panics
All of these can be turned off for use cases like embedded where binary size is important and you'll then get binaries of comparable size to those produced by C compilers.
- the standard library
- jemalloc (this is no longer the default, but is still a factor in people's perception about binary size because it used to be)
- debug symbols
- unwinding support for panics
All of these can be turned off for use cases like embedded where binary size is important and you'll then get binaries of comparable size to those produced by C compilers.