Построение нового ядра ванили - некоторая путаница с произведенными дебами

Итак, я хотел попытаться построить 2.6.39-4. Я выполнил процедуру на странице ubuntu wiki «GitKernelBuild».

Короче, загрузите tar.bz2, извлеките, скопируйте мою старую конфигурацию, сделайте oldconfig, а затем

fakeroot make-kpkg --initrd --append-to-version=-custom kernel_image kernel_headers

Все прошло отлично, я использую это ядро ​​прямо сейчас, кроме одной мелочи: я не могу строить другие модули, строить dkms и т. Д. Далее следует следующая информация:

Произведенные файлы deb - два:

[ f2]

Я немного смущен этим.

В нормальных ядрах ubuntu, даже в mainline-ppa, установлены три файла deb. Например, для того же ядра из ubuntu wiki «GitKernelBuild» страница существуют следующие пакеты:

linux-image-2.6.39-02063904-generic_2.6.39-02063904.201108040905_amd64.deb
linux-headers-2.6.39-02063904-generic_2.6.39-02063904.201108040905_amd64.deb
linux-headers-2.6.39-02063904_2.6.39-02063904.201108040905_all.deb

Как вы можете видеть, существуют два разных пакета заголовков. Действительно, после их установки пакеты mainline ppa создают каталог под / lib / modules:

/lib/modules/2.6.39-02063904-generic

В этом каталоге существует символическая ссылка, которая указывает на -generic заголовки в / usr / src

/lib/modules/2.6.39-02063904-generic/build -> /usr/src/linux-headers-2.6.39-02063904-generic

В / usr / src для этого ядра существуют два разных каталога

/usr/src/linux-headers-2.6.39-02063904-generic
/usr/src/linux-headers-2.6.39-02063904

Теперь вот проблема с моими собственными двумя пакетами:

В / usr / src есть только одна папка,

/usr/src/linux-headers-2.6.39.4-custom

И под / lib / modules есть папка

/lib/modules/linux-headers-2.6.39.4-custom

Настоящая проблема, и причина, по которой я Я пишу это сообщение, это символическая ссылка, которая создается в указанном выше каталоге:

/lib/modules/linux-headers-2.6.39.4-custom/build -> /home/nickped/projects/kernel/linux-2.6.39.4

Как вы можете видеть, он ссылается на каталог, в котором я построил ядро ​​- это, конечно, может и не существовать впоследствии. Это приводит к невозможности сборки других модулей (например, vmware, virtualbox и т. Д.), Поскольку он не может найти важные вещи.

Почему это происходит? Как это можно исправить? Почему есть два, а не три файла deb? Какова цель этих трех разных файлов deb, которые имеются в официальных выпусках, и как они могут быть созданы другими?

1
задан 10 March 2014 в 20:24

0 ответов

Другие вопросы по тегам:

Похожие вопросы: