mold 3.0 ersetzt C++ durch Rust


Der Linux-Linker mold wurde in Version 3.0 vollständig in Rust neu geschrieben, wobei Geschwindigkeit und Befehlskompatibilität erhalten bleiben, während die Sicherheit verbessert wird.
Ein Entwicklerwerkzeug für Linux hat sich vollständig von C++ verabschiedet und setzt nun auf Rust.
Im Mittelpunkt steht mold, ein Linker, der den Build-Prozess von Programmen beschleunigt, indem er kompilierten Code zu einem fertigen Programm zusammenführt.
Die Version 3.0 wurde komplett in Rust neu implementiert. Laut den Entwicklern läuft sie genauso schnell wie die ursprüngliche C++-Version.
Befehle und unterstützte Architekturen bleiben unverändert. Um die Kompatibilität zu überprüfen, haben die Entwickler alle Gentoo-Pakete gebaut und keine Regressionen festgestellt.
Während des Rewrite-Prozesses:
- Wurde CMake durch Cargo ersetzt;
- Die Abhängigkeit von Intel oneTBB entfernt;
- Eine Bounds-Checking-Funktion zur Handhabung beschädigter Dateien hinzugefügt.
Die Entwickler streben nun an, die verbleibenden Inkompatibilitäten mit GNU ld zu beseitigen, damit Linux-Distributionen mold als Standard-Linker nutzen können.
Warum das wichtig ist
AnalyseDie Neuimplementierung in Rust reduziert Risiken im Bereich der Speichersicherheit und vereinfacht das Build-System. Sollte mold zum Standard-Linker werden, könnten Paket-Builds über viele Linux-Distributionen hinweg deutlich schneller ablaufen.
In der Community diskutieren
Teile deine Fragen und Erkenntnisse mit Entwicklern