减少Rust构建物大小

6 5月

一般情况下使用cargo build –release就可以生成最终构建物并直接执行,理论上将Rust这种语言构建出的hello world体积应该很小。但是实际上用hello world为例

fn main() {
    println!("Hello world!");
}

最后构建出的结果有2M。

这个随便搜索一下就可以得到很多优化方法,但是考虑到便利性和收益,这里用最简单的方式来,不考虑代码改动,尽可能不变更构建命令,且跨平台友好。

首先改动Cargo.toml,增加

[profile.release]
opt-level = 'z'  # Optimize for size
lto = true
codegen-units = 1
panic = 'abort'

然后使用upx压缩,upx可以自动识别平台和类型,直接传入文件名就行了。

最终大小为86KB。

发表评论

电子邮件地址不会被公开。