Линковщик Mold 3.0 вышел после переписывания с C++ на Rust

· Linux и open source
Высокоскоростной компоновщик Mold выпущен в версии 3.0 — это первый релиз, целиком переписанный с C++ на Rust. Разработчики нацелены на то, чтобы Mold стал линковщиком по умолчанию в Linux.

cover.svg

Высокоскоростной компоновщик 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

Комментарии

Войдите, чтобы комментировать.

  • Пока нет комментариев.