Собираю ядро для arm64 платы, и устанавливаю его во временную директорию. Вот так: git clone --depth=1 -b baikalm-5.10.y git://github.com/altlinux/linux-be-m1000.git cd linux-be-m1000 make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j`nproc` baikal_minimal_defconfig make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j`nproc` all rm -rf _inst mkdir -p -m755 _inst make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- INSTALL_PATH=`pwd`/_inst/boot INSTALL_MOD_PATH=`pwd`/_inst install modules_install Ожидаемый результат: 1. Ядро (vmlinuz), его System.map и config скопированы в директорию _inst/boot 2. Модули скопированы в _inst/lib/modules/$kernel_version 3. (Не обязательно) Вычислены зависимости модулей, что-нибудь вроде depmod -b `pwd/_inst -F _inst/boot/System.map-${kernel_version} $kernel_version Наблюдаемый результат: Дополнительно к ожидаемым действиям installkernel пытается 1. Прописать собранное ядро в grub.cfg на локальной (x86_64) системе 2. Создать initramfs (из x86_64 бинарников, ха-ха) Эти действия не только неправильны, но и потенциально разрушительны. Например, если кто-то сделает `sudo make install ...`, то получит сломанный grub.cfg (который по умолчанию грузит ядро для другой архитектуры) Предлагаемые изменения: Не трогать загрузчик, и не создавать initramfs, если а) installkernel вызван из Makefile ядра (с 3 или более аргументами), либо б) installkernel вызван из Makefile ядра (с 3 или более аргументами), и $BOOTDIR != /boot
#279869 BUILDING #1 [locked] [test-only] sisyphus bootloader-utils.git=0.5.3-alt2
#279869 EPERM #2 sisyphus bootloader-utils.git=0.5.3-alt2 Importance: major, т.к. сборка ядер (для arm/arm64) - и без того не совсем простой процесс - требует лишних телодвижений.
Уважаемые мейнтенеры bootloader-utils! Пожалуйста, сделайте что нибуть с этим. Этот баг мешает разрабатывать ядра для систем на mipsel и riscv64.
(Ответ для Ivan A. Melnikov на комментарий #3) > Уважаемые мейнтенеры bootloader-utils! > > Пожалуйста, сделайте что нибуть с этим. Этот баг мешает разрабатывать ядра > для систем на mipsel и riscv64. ssh git task show 279869 id=279869 locked=no shared=no fail_early=yes test_only=no repo=sisyphus owner=asheplyakov state=EPERM try=3 iter=1 age=4w build_time=2021-Aug-24/08:09:05 100:dir=/people/asheplyakov/packages/bootloader-utils.git 100:tag_name=0.5.3-alt2 100:tag_id=5a6374e63d1f3bf1943690f3b236c9e49c567db5 100:tag_author=Alexey Sheplyakov <asheplyakov@altlinux.org> 100:fetched=2021-07-21T07:07:54 100:userid=asheplyakov 100:approved_by=sin boyarsh 100:pkgname=bootloader-utils Я одобрил задание, что ещё надо сделать?
(Ответ для Anton V. Boyarshinov на комментарий #4) > Я одобрил задание, что ещё надо сделать? PS уже довольно давно как одобрил, уже не помню когда именно
(In reply to Anton V. Boyarshinov from comment #5) > > Я одобрил задание, что ещё надо сделать? Спасибо. Больше ничего не надо. > PS уже довольно давно как одобрил, уже не помню когда именно Я пропустил уведомление (почему-то оно попало в spam).
Исправлено в версии 0.5.3-alt2