В Linux 5.7 кардинально упростили сборку ядра с помощью LLVM

 

С прошлого года стало возможным собрать основную ветку ядра x86_64 Linux с помощью компилятора Clang из набора LLVM. Теперь же в обновленной системе Kbuild для ядра Linux 5.7 этот процесс стал значительно проще — достаточно присвоить переменной LLVM значение 1 и для компиляции ядра будет задействован Clang и все утилиты LLVM вместо традиционных GCC и Binutils.

Параметр LLVM=1 может быть передан из командной строки или как переменная окружения.

Единственное исключение заключается в том, что ассемблер из состава LLVM не будет использоваться по умолчанию, так как в ядре все ещё есть некоторые проблемы с его поддержкой. Тем не менее, обновленный Kbuild для Linux 5.7 также включает переменную LLVM_IAS=1 для задействования интегрированного ассемблера, который пока всё ещё считается экспериментальным. В любом случае новые параметры позволяют очень легко перейти к использованию стека компиляторов на основе LLVM для сборки ядра.

Вышедшая недавно десятая версия LLVM получила массу обновлений — экосистема вокруг LLVM расширяется, а популярность проекта только растёт. Конечно, вряд ли мы в ближайшее время увидим полный «переезд» и отказ от GCC. Впрочем, другая открытая ОС, FreeBSD уже сделала шаг в этом направлении: из дерева исходных кодов удалены GCC и сопутствующие утилиты, а для сборки для платформ, которые не готовы к Clang, придётся использовать уже внешний инструментарий.

Если вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER. | Можете написать лучше? Мы всегда рады новым авторам.

Источник:

Постоянный URL: https://servernews.ru/1008322

Комментарии

Система Orphus