Por que os executáveis Rust são tão grandes e como corrigir isso?
Olá a todos! Sou novo em Rust e notei uma coisa estranha: até o programa mais simples ocupa megabytes. Escrevi "Hello, world!":
```rust
fn main() {
println!("Hello, world!");
}
```
Compilei com `cargo build` e obtive um arquivo de 3.5 MB! Para comparação, um programa similar em C ocupa apenas 16 KB. Entendo que Rust não é C, mas a diferença de 200 vezes me preocupa.
Tentei adicionar `--release` — ficou com 2.8 MB. Ainda assim enorme. E não estou usando nenhum crate externo, apenas a biblioteca padrão. Meu projeto é um binário comum, sem dependências extras.
Ouvi dizer que Rust faz link estático da biblioteca padrão, mas será que ela é tão grande? Em Go também há link estático, mas os binários são menores. Será que estou fazendo algo errado? Existe uma forma de reduzir o tamanho? Ou isso é apenas o preço pela segurança de memória e abstrações de custo zero?
Agradeço por explicações e dicas para reduzir o tamanho. Quero entender se isso é normal para Rust ou se perdi algo.