首页 > 数据库 > 数据库开发技术 > 【投稿】逃离编译时的内存溢出
(signal: 9, SIGKILL: kill) warning: build failed, waiting for other jobs to finish... error: build failed.
-Z time-passes 这个 RUSTFLAGS 可以帮助观测一些指标,就很容易判断出来是 OOM 。而且之前的一些反馈和报错也能够佐证是发生在链接阶段。cc,这意味着会利用到 gnu 工具链中的 ld,尽管 gnu 在自由软件领域有着卓越的贡献,但以目前的经验而言,这并不是一个好的现代选择。它的一个有力的竞争者是 llvm 工具链中的 lld 。# 结合 Make
mold -run make <make-options-if-any>
# 或者针对于 Cargo
mold -run cargo <cargo-options-if-any>
sudo make install 安装的,path/to/mold 大概率会指向 /usr/local/bin/mold 。[target.x86_64-unknown-linux-gnu]
linker = "clang"
rustflags = ["-C", "link-arg=-fuse-ld=/path/to/mold"]
-C symbol-manging-version=v0 这个 RUSTFLAG ,相对旧一点的版本可能需要使用 -Z symbol-manging-version=v0 。RUSTFLAGS="-C symbol-manging-version=v0" cargo <cargo-options-if-any>
-Z:[target.nightly-x86_64-unknown-linux-gnu]
rustflags = ["-C", "symbol-mangling-version=v0"]
笑死,清理了半天依赖,还剩下不到 900 个。
原文作者:Rust语言中文社区;如有侵权,请联系管理员删除。