Мне удалось собрать ядро PREEMPT-RT на Ubuntu 20.04 в основном на основе это руководство следующее:
sudo apt install build-essential git libssl-dev libelf-dev flex bison
Загрузите исходный код ядра и патч для этой версии:
wget https://mirrors.edge.kernel.org/pub/linux/kernel/v5.x/linux-5.4.143.tar.xz
wget https://mirrors.edge.kernel.org/pub/linux/kernel/projects/rt/5.4/patch-5.4.143-rt64-rc2.patch.xz
Распаковать и применить патчи:
tar -xf linux-5.4.143.tar.xz
компакт-диск Linux-5.4.143
xzcat ../patch-5.4.143-rt64-rc2.patch.xz | патч -p1
Настройте, и когда его попросят Модель упреждения выберите Полностью вытесняемое ядро. Примите значение по умолчанию для остальных:
cp /boot/config-5.4.0-81-общий .config
сделать старый конфиг
Изменить .config
файл и изменить CONFIG_SYSTEM_TRUSTED_KEYS="debian/canonical-certs.pem"
к CONFIG_SYSTEM_TRUSTED_KEYS=""
Собрать ядро:
сделать -j8 деб-пакет
Установите сгенерированные пакеты и перезагрузите систему.
sudo dpkg -i ../linux-headers-5.4.143-rt64-rc2_5.4.143-rt64-rc2-1_amd64.deb ../linux-image-5.4.143-rt64-rc2_5.4.143-rt64-rc2-1_amd64 .deb ../linux-libc-dev_5.4.143-rt64-rc2-1_amd64.deb
После перезагрузки вы должны увидеть что-то вроде этого:
# имя-а
Linux vod 5.4.143-rt64-rc2 #1 SMP PREEMPT_RT Вт, 7 сентября, 20:19:55 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
гид предлагает несколько других шагов, но я еще не проверял их.