Линковщик Mold 3.0 вышел после переписывания с C++ на Rust
Высокоскоростной компоновщик Mold, который позиционируется как альтернатива GNU Gold/LD и LLVM LLD, вышел в версии 3.0. Это первый релиз после полного переписывания проекта с языка C++ на Rust.
Как сообщалось ещё в примечаниях к выпуску 2.42.1, этот релиз стал последним для версии на C++. Mold 3.0 заявлен как полноценная замена (drop-in replacement) для 2.42.1, но теперь работающая на Rust.
Курс на совместимость
Главная цель ветки 3.x — закрыть оставшиеся пробелы в совместимости с GNU ld, прежде всего в поддержке линкер-скриптов. По словам разработчиков, это должно проложить дорогу к тому, чтобы Mold был принят в качестве линковщика по умолчанию в дистрибутивах Linux — амбиция, которую проект давно декларирует.
Что даёт Rust
Переход на Rust, как утверждается, делает Mold более устойчивым при работе с повреждёнными входными файлами. Вместе со сменой языка изменились и зависимости: Mold 3.0 требует Rust версии 1.95 или новее, отказывается от использования Intel oneTBB и собирается с помощью Cargo вместо CMake.
В ходе переписывания было исправлено множество ошибок. Полный перечень изменений приведён в официальном анонсе релиза.
Источник: Phoronix
Комментарии
Войдите, чтобы комментировать.