Lazarus project
http://lazarus.iboards.ru/

Kernel headers for kernel night-leshiy cannot be found
http://lazarus.iboards.ru/viewtopic.php?f=39&t=113
Страница 1 из 1

Автор:  filmak [ 11 окт 2012, 11:58 ]
Заголовок сообщения:  Kernel headers for kernel night-leshiy cannot be found

Не могли бы Вы помочь с ответом по следующей проблеме:
Установил 3 файла ядра 3.6.2 (image, headers, source) из ночной сборки Лешего (NiGHt-LEshiY). Попытался установить др-р NVIDIA через скрипт sgfxi. Результат: Error(1). (Лог-файл /var/log/invidia-installer.log посмотреть не могу, т.к. снова перешел на ядро 3.5.4, снова установил др-р NVIDIA и файл /var/log/invidia-installer.log перезаписался.)
Пытался ставить др-р NVIDIA на ядро 3.6.2 и вручную через терминал. Результат тот же:
Error! Your kernel headers for kernel 3.6.2-pf cannot be found. Please, install linux-headers-3.6.2-pf package.
На ядре 3.5.4-pf таких фокусов не было. В чем причина?
P.S. На сайте Лешего нет нет данных для обратной связи.

Проблема решена. Может кому понадобится.
Вся проблема в том, что некоторым модулям (NVIDIA, VirtualBox) для сборки нужны как некоторые "личные" файлы пакета headers, так и source, плюс ко всему при установке образа ядра до этих двух пакетов симлинки в папке модулей на папки хедеров и сорцов стираются, и dkms не может найти и собрать модули. Мы сложим и хедеры, и сорцы в одну папку и сделаем на неё два симлинка, и всё будет хорошо.
Вместо %V% ставить свою версию и вариант ядра (например, 3.6.2-pf).
Делать всё от рута.
1. Установить все 3 пакета (linux-image, linux-headers, linux-source)
2. Зайти в папку /usr/src
3. Распаковать архив linux-source-%V%.tar.bz2 в эту папку (так, что папка linux-source-%V% должна появиться в /usr/src)
4. Скопировать всё содержимое папки linux-headers-%V% в распакованную нами папку linux-source-%V% с заменой одноимённых файлов.
5. Теперь нужно создать свои правильные ссылки на нашу папку с сорцами и хедерами, в терминале вводим:
ln -s /usr/src/linux-source-%V% /lib/modules/%V%/build
ln -s /usr/src/linux-source-%V% /lib/modules/%V%/source
Ну а теперь пересобираем модули с помощью dkms (должны быть установлены пакеты исходников модулей для dkms, у nvidia это nvidia-kernel-dkms - он ставится при установке общего пакета nvidia-glx и при своей установке он сам делает приведённое ниже действие с подробным выводом)
/etc/kernel/header_postinst.d/dkms %V% /boot/vmlinuz-%V%
Смотрим в папке /lib/modules/%V%/updates/dkms - видим модули.

P.S. Я сделал только ссылки на папку с сорцами и хедерами, модули не пересобирал. Перезагрузился с ядром 3.6.2-pf, запустил скрипт sgfxi - и voila! Др-р NVIDIA стал легко.
Гайд любезно предоставил bugme666 http://forum.csmania.ru/viewtopic.php?p=684738#p684738

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/