Mold Linker Version 3.0.0 Release – Rewritten in Rust
- ID
- 32036
- Status
- summarized
- Published
- 05 Oct 2026, 7:17 PM
- Fetched
- 06 Oct 2026, 4:56 AM
- Provider
- Hacker News
- Category
- dev-community
- Original URL
- https://github.com/rui314/mold/releases/tag/v3.0.0
- Source URL
- https://hnrss.org/best
Summary
- Score
- 7.5
- Created
- 06 Oct 2026, 4:57 AM
- Tags
- Audience
- developers
What happened
mold 3.0.0 is the first Rust rewrite of the high-speed linker, replacing the C++ version after 2.42.1. It is intended as a drop-in replacement for 2.42.1 with the same command-line options, target architectures, output, and on-par linking performance, while closing GNU ld compatibility gaps especially around linker scripts. The build system moved from CMake to Cargo, requires Rust 1.95+ and a C compiler, drops oneTBB, statically links mimalloc 3.5.3, and adds bounds-checked handling for corrupted input files; the Hacker News thread has 207 points and 122 comments.
Why it matters
If you self-build mold or maintain CI/distro packaging for it, you must switch from CMake to Cargo, ensure Rust 1.95+, use ./install-mold.sh with PREFIX/DESTDIR, and set MOLD_LIBDIR for installs where libraries go outside $PREFIX/lib so mold -run can find mold-wrapper.so. Otherwise, the upgrade is meant to be drop-in for 2.42.1, so test linker scripts and GNU ld compatibility before making it default. There is no Malaysia-specific hook; local impact is limited to teams whose toolchain or packaging uses mold.
Discussion angle
Does moving mold to Rust and Cargo reduce packaging friction enough for Linux distributions to adopt it as the default linker, and what breaks for existing CMake-based build scripts or non-$PREFIX/lib installs?