Инструменты18 августа 2026 г., 19:18 МСК🤖 Auto

Rust в ядре Linux 7.3: подготовка к компиляции через GCC

В ветку Linux 7.3 включены первые исправления для экспериментального бэкенда GCC (rustc_codegen_gcc), что откроет путь к использованию Rust на архитектурах, не поддерживаемых LLVM.

Баннер новости 6011

Расширение поддержки архитектур

Основная цель внедряемых изменений — использование GCC для генерации кода в компиляторе Rust. Это критически важно для архитектур, которые поддерживаются ядром Linux и GCC, но отсутствуют в экосистеме LLVM. Среди таких архитектур — m68k, Alpha, а также различные встроенные системы и микроконтроллеры (MCU). Это позволит разработчикам применять оптимизации GCC и писать безопасный код на Rust для широкого спектра «железа».

Технические детали и исправления

Разработчики уже начали вносить патчи, устраняющие ошибки сборки, связанные с неоднозначностью компонента rustc-dev. Работы ведутся в рамках проекта rustc_codegen_gcc (доступен на GitHub), который не следует путать с фронтендом GCC для Rust (gccrs). На данный момент поддержка остается экспериментальной, но базовые барьеры для интеграции в основное дерево ядра начинают устраняться.

Сравнение подходов к компиляции Rust в Linux

Характеристика Стандартный подход (LLVM) Экспериментальный подход (GCC)
Бэкенд LLVM (через rustc) rustc_codegen_gcc
Поддерживаемые архитектуры Основные (x86, ARM, RISC-V и др.) Дополнительные (m68k, Alpha, MCU)
Статус в Linux 7.3 Основной рабочий инструмент Начальная фаза исправления ошибок сборки

Дополнительные улучшения

Помимо работы с GCC, пулл-реквест для Linux 7.3 включает исправления предупреждений компилятора Clang и обновления различных модулей Rust, используемых в ядре. Эти изменения направлены на повышение стабильности и чистоты кодовой базы. Полный список изменений доступен в официальном pull-реквесте разработчиков.

Источник: Phoronix ↗