LINUX.ORG.RU

Проблемы со сборкой ядра

 , , , ,


1

1

Всем привет. Решил тут пропатчить ядро (вот этим патчем, если что https://github.com/jirka-grunt/fbcondecor), патчиться хорошо, но не запустился menuconfig. Решил, что дело в патче, скачал чисты сырцы, проблема повторилась. Почесал репу, решил, что дело в том, что linux-libre, скачал несколько рандомных ядер с kernel.org, проблема повторилась с каждым. Ошибка следующая:

 sh: строка 1: ./scripts/gcc-version.sh: Отказано в доступе
init/Kconfig:34: syntax error
init/Kconfig:33: invalid statement
init/Kconfig:34: invalid statement
sh: строка 1: ./scripts/clang-version.sh: Отказано в доступе
init/Kconfig:49: syntax error
init/Kconfig:48: invalid statement
sh: строка 1: ./scripts/lld-version.sh: Отказано в доступе
init/Kconfig:53: syntax error
init/Kconfig:52: invalid statement
make[1]: *** [scripts/kconfig/Makefile:35: nconfig] Ошибка 1
make: *** [Makefile:603: nconfig] Ошибка

Проверил, те файлы, к которым отказано в доступе - исполняемые. Самое интересное, что когда я захожу в директорию /usr/src/linux-libre-lts, и делаю там sudo make menuconfig, все работает как надо (так что дело не в неустановленной ncurses).

Пробовал make config, xconfig, nconfig и даже oldconfig - результат одинковый. ЛОР, пожалуйста, помоги!

UPD решено, см последний коммент.

★★★

Последнее исправление: Dog (всего исправлений: 2)

Ответ на: комментарий от fernandos

И так и так пробовал, никак не запускается ни один config (make config, make menuconfig, make xconfig и тд) ни с одним ядром, кроме того, что в /usr/src лежит. Со скачанными - не работает ни в какую.

Dog ★★★
() автор топика

fbcondecor

Так его никто не поддерживает уже сколько лет. Из genpatсhes в районе 4.20 убрали. В арче по-моему тоже нет.

Update. Посмотрел точнее, на 4.19 у меня декоратор консольки ещё работал, но вспоминаю пришлось самому и splashutils патчить.

vvn_black ★★★★★
()
Последнее исправление: vvn_black (всего исправлений: 1)
Ответ на: комментарий от vvn_black

Но тем не менее, версию для 5.10 я нашел. Патч успешно применяется, проблема не с ним пока что - menuconfig и на чистых ядрах не запускается. splashutils и fbsplash есть в аурах, не помнишь, как именно патчил?

Вообще, странные люди эти мейнтейнеры ядра, всякую ересь в ядро принимают, а реально нужный патч с обоями так и не попал в апстрим.

Dog ★★★
() автор топика
Ответ на: комментарий от Dog

не помнишь, как именно патчил

Для splashutils, пришлось в common.c добавить заголовки #include <sys/sysmacros.h>. Это был декабрь 2018, позже не пробовал.

vvn_black ★★★★★
()
Последнее исправление: vvn_black (всего исправлений: 1)

А скрипты просто так запускаются? scripts/gcc-version.sh gcc

Оно лежит там же где и оригинальные исходники или отдельно? Может там noexec на разделе? Хотя он скриптам вроде и не должен мешать.

xaizek ★★★★★
()
Ответ на: комментарий от fernandos

Да там Shift-PgUp/PgDown прокрутку выкинули, а он про обои…

luke ★★★★★
()

А шелл какой у тебя? Что в PATH (заодно и CPATH проверь)

luke ★★★★★
()

какой дистр? на gentoo например надо сказать eselect kernl set <версия ядра>.

anonymous
()
Ответ на: комментарий от xaizek

Не выполняются, тоже самое, «отказано в доступе». Руту тоже. noexec нету, дело в моем хомяке происходит, мои собственные скрипты,да и всякие бинарники же запускаются.

Dog ★★★
() автор топика
Ответ на: комментарий от fernandos

Попробовал, собралось, но какой в этом смысл? В /usr/src какие-то кастрированные исходники лежат, половины файлов нет (в исходниках с kernel.org они есть)

Dog ★★★
() автор топика
Ответ на: комментарий от luke

Никакого сарказма, мне этот патч намного нужнее всякого г от M$, которое почему-то есть в ядре. Когда прокрутку в терминале по shift+pgup выкинули, я сам орал. Но это хотябы лечиться tmux’ом. С обоями сложнее, я могу конечно, заюзать fbterm, но у него свои недостатки,в тч, проблемы с копипастом из него и в него.

Отвечая на вопрос:

echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl

CPATH пустая. Шелл bash.

Dog ★★★
() автор топика
Ответ на: комментарий от xaizek

Да и /usr у меня на том же разделе, в сырцах установленного ядра-то оно собирается! Давно такой странной проблемы не было.

Dog ★★★
() автор топика
Ответ на: комментарий от Dog

В файлах скриптов. Не должно быть, да и ошибка вроде другая тогда. Но можно проверить, вместе с /bin/sh ./scripts/gcc-version.sh и bash scripts/gcc-version.sh.

xaizek ★★★★★
()
Ответ на: комментарий от xaizek

Было бы очень странно, тк скрипты из архива, скачанного с kernel.org. Да и я несколько разных ядер проверял.

Так, странно, ./scripts/gcc-version.sh выдает ошибку, тогда как и /bin/sh ./scripts/gcc-version.sh и bash scripts/gcc-version.sh выполняются.

Dog ★★★
() автор топика

Проблема решена. Дело было в том, что права на все директории с сырцами ядра стояли drwx—— поменял на drwxr-xr-x и menuconfig тут же собрался! Подозреваю, дело в том, что я архив распаковал по привычке p7z, а он tar.xz архивы распаковывает через одно место, сначала извлекает из xz tar, который извлекается руками еще раз. Дурацкая привычка всему виной, надо уже прочитать man tar’а наконец… Всем спасибо за ответы.

Dog ★★★
() автор топика
Ответ на: комментарий от vvn_black

А можно поподробнее, как ты ядро сконфигурировал? Я делал в тч по инструкции со страницы Fbsplash в генту-вики, у меня после патча строчка «Support for the Framebuffer Console Decoration» не появилась в Device Driver/Graphics Support/Console display driver support. Как патчил? patch -p1 < fbcondecor-5.8.patch?

Dog ★★★
() автор топика
Ответ на: комментарий от vvn_black

Или просто руками в .config вписал CONFIG_FB_CON_DECOR=y?

Dog ★★★
() автор топика
Ответ на: комментарий от Dog

tar xvf file.tar.gz

В CPATH я обычно заголовки нового ядра добавляю, а то он по привычке их в /use/include ищет, а там хз что может быть.

luke ★★★★★
()
Ответ на: комментарий от Dog

строчка … не появилась

Что мешает посмотреть зависимости в menuconfug?

Symbol: FB_CON_DECOR [=y]
  Type  : bool
  Defined at drivers/video/console/Kconfig:164
    Prompt: Support for the Framebuffer Console Decoration
    Depends on: VT [=y] && FRAMEBUFFER_CONSOLE [=y] && !FB_TILEBLITTING [=n]
    Location:
      -> Device Drivers
        -> Graphics support
          -> Console display driver support
            -> Framebuffer Console support (FRAMEBUFFER_CONSOLE [=y])

Как патчил? patch -p1 < fbcondecor-5.8.patch?

Нет, всё средствами portage.

vvn_black ★★★★★
()
Ответ на: комментарий от luke

Да, tar’ом все с правильными правами распаковывается. Даже в голову не пришло, что виноват может быть p7z.

Dog ★★★
() автор топика
Ответ на: комментарий от vvn_black

Разобрался, отключил FB_TILEBLITTING и все появилось. Собрал, скачал с аур тему, поставил, и о чудо, в консоли появились обои! Только как их менять? В аурах есть генератор тем, но он просто конвертит изображения,но не создает .cfg файлов для нужных разрешений, как ты устанавливаешь нужное изображение, не из темы? Пробовал сконвертить в нужное разрешение, переименовать и закинуть в /etc/splash/themename/images, не вышло.

Dog ★★★
() автор топика
Ответ на: комментарий от Dog

Разобрался, отключил FB_TILEBLITTING и все появилось

Хм, ну ты же сам разобрался. В дорогу, разбирайся дальше тоже сам.

vvn_black ★★★★★
()
Ответ на: комментарий от vvn_black

Ну да, разобрался, оказалось, этот fbsplash-theme-gen кривоватый, он путал verbose и silent картинки, достаточно было их переименовать, silent в verbose, а verbose в silent, и все заработало.

Dog ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.