You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Switch from ld (the default linker) to using lld for GNU Linux targets (vercel#8166)
**What's wrong with `ld`?** It's very slow and uses a lot of memory.
**Why `lld`?** It's fast, mature, and well-supported. Meta and Google
use it for all their linking workloads. We're already using it for macos
and x86-64 Windows. There is [ongoing work to make it the default for
rustc](rust-lang/rust#71515), and it already
is default on a few platforms.
**Why not `mold`?** Mold is generally faster, but the margin is slim
enough for our workloads that it doesn't really matter. Mold only
recently got support for LTO, doesn't support v0 rust symbol demanging,
doesn't support BOLT (though we don't use that yet), etc. Mold is
maturing quickly, but `lld` still seems like the "safer" choice.
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+4Lines changed: 4 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -29,6 +29,10 @@ Thanks for your interest in contributing to Turbo!
29
29
-[Rust](https://www.rust-lang.org/tools/install)
30
30
-[cargo-groups](https://github.com/nicholaslyang/cargo-groups) (used to group crates into Turborepo-specific ones and Turbopack-specific ones)
31
31
32
+
### Linux Dependencies
33
+
34
+
- LLD (LLVM Linker), as it's not installed by default on many Linux distributions (e.g. `apt install lld`).
0 commit comments