Ryan Hendry
Ryan Hendry

Reputation: 388

Why does the Rust compiler generate huge executables?

Compiling a simple hello world application like this:

fn main() {
    println!("Hello, World!");
}

Generates a relatively huge 822 KB executable using the default compiler options (rustc hello.rs).

Why does this happen and what is the best way to reduce the size of the executable?

Upvotes: 8

Views: 2166

Answers (2)

PEPP
PEPP

Reputation: 967

  1. The standard library is linked statically by default. You can change that by passing the -C prefer-dynamic option to the compiler.

  2. Rust is still a very young language with an incompletely optimized compiler. There is still a lot of room left for improvements in compilation speed, code speed and size, wording of error messages and so on.

Upvotes: 13

Shanavas M
Shanavas M

Reputation: 1629

rustc -C opt-level=2 hello.rs gives a 4kb binary

Upvotes: -1

Related Questions