HeadlinesBriefing HeadlinesBriefing.com

Mold Linker 3.0.0 – Neu in Rust

Hacker News •
×

mold 3.0.0 ist eine neue Hauptversion des Hochgeschwindigkeits-Linkers, neu geschrieben von C++ in Rust. Dies ist die erste Rust-Version, wobei 2.42.1 die letzte C++-Version ist. Das Ziel von mold 3.x ist es, Kompatibilitätslücken mit GNU ld zu schließen, insbesondere bei der Unterstützung von Linker-Skripten, und den Weg für die Einführung von mold als Standard-Linker in Linux-Distributionen zu ebnen.

mold 3.0 ist ein direkter Ersatz für 2.42.1, akzeptiert dieselben Befehlszeilenoptionen und unterstützt dieselben Ziele. Die Linkleistung bleibt gleich. Der Wechsel zu Rust macht mold sicherer bei beschädigten Eingabedateien; die C++-Version konnte Speicher außerhalb der Grenzen lesen, während mold 3.0 Grenzen prüft und stattdessen in Panik gerät.

Zu den Build-Änderungen gehört die Verwendung von Cargo anstelle von CMake, wobei Rust 1.95 oder höher erforderlich ist. Führen Sie `cargo build --release` und `./install-mold.sh` aus. mold hängt nicht mehr von TBB ab und verlinkt statisch mimalloc 3.5.3. Die Testsuite wird mit `cargo test` ausgeführt.

Fehlerbehebungen umfassen die Behebung von Abstürzen mit Versionsskripten, `--gc-sections` entfernt keine Funktionen mehr von `--init` und `--fini`, und die Behebung von nichtdeterministischer Ausgabe in mehreren Bereichen. Fehler für PC-relativierte Verschiebungen gegen Symbole in gemeinsam genutzten Bibliotheken werden jetzt korrekt behandelt.

Quelle: Hacker News · Zusammengefasst von HeadlinesBriefing