Допустим хочется мне собрать stable ядро, лежащее нынче на kernel.org. Смотрю на своем хосте (11й дебиан) - версия 5.10.0-9-amd64. Окей на сайте лежит версия - 5.10.146. Вот хочу ее собрать.
В интернетах пишут, всякие модные apt install linux-headers-$(uname -r), но вот проблема, в том, что у меня на хосте такая версия, который в репах уже нет. "Apt search linux-headers" выдает некоторое количество заголовков, но а) не совпадающих с моим ядром, и б) тоже лохматых версий. Совсем не .146.
Вроде как в инструкциях сборке сказано что заголовки обратно совместимы и мол можно со старыми тоже собрать, но оговариваются, что какой-то функционал может быть не доступен.
Но допустим это не спортивно, и мне нужно именно с заголовками к скачаной версии собрать. Где их брать?
обновись. если у тебя неподдерживаемое ПО. оно таковым и останется.
в принципе в линуксе очень сильно поддержка легаси. и можешь поставить новое ядро и на нем будут работать старые проги.
тебе надо разобраться в технологии компиляции ядра.
для компиляции ядра не нужен пакет linux-headers-* вообще.
этот пакет создается при компиляции ядра и описывает его внутреннюю структуру
используется при компиляции дополнительных к данному ядру модулей. к примеру драйверов.
А если речь идет о совсем новом ядре - то вам не нужны заголовки.
Посмотрите, как устроен пакет, и соберите пакет под себя.
Ну или просто соберите ядро, пропишите его в загрузчик и перегружайтесь в него.
На kernel.org лежат исходники ядра, там есть все, что необходимо для его сборки.
А в дистрибутиве в пакетах kernel* лежат - само ядро в отдельном пакете (нужно для загрузки), заголовки под это ядро - нужны для сборки остального софта, чтобы не разворачивать на сервере полную среду сборки и т.д.
на kernel.org лежат исходники уже с заголовками (отдельный пакет для этого существует чтобы для сборки модулей и не только не требовалось тянуть все исходники)
в принципе ядро собирается командами
make menuconfig
make
а устанавливается
make install
make modules_install
p.s. если тебе нужно собирать dpkg пакет, то либо ищи .dsc файл описывающий как собирать нужную версию либо пиши сам