Я следую за этим, чтобы учиться компилировать ядро. Я использовал
apt-get source linux-image-$(uname -r)
для загрузки исходного кода ядра Linux, я - использование curretly.
После выполнения вышеупомянутой команды были загружены следующие файлы (и каталоги).
user $ ls -l
total 130972
drwxrwxr-x 27 sps sps 4096 Oct 16 03:10 linux-lts-vivid-3.19.0
-rw-rw-r-- 1 sps sps 10980684 Oct 5 10:54 linux-lts-vivid_3.19.0-30.34~14.04.1.diff.gz
-rw-rw-r-- 1 sps sps 7396 Oct 5 10:54 linux-lts-vivid_3.19.0-30.34~14.04.1.dsc
-rw-rw-r-- 1 sps sps 123115155 May 6 21:35 linux-lts-vivid_3.19.0.orig.tar.gz
user $
На той же странице это упоминается:
Создание ядра довольно легко. Измените свой рабочий каталог на корень исходного дерева ядра и затем введите следующие команды:
Но я не уверен, который является "корнем исходного дерева ядра".
Действительно ли это - текущий каталог (куда я работал apt-get source ...
и где у меня есть вышеупомянутые перечисленные файлы)?
Или, это каталог:
drwxrwxr-x 27 sps sps 4096 Oct 16 03:10 linux-lts-vivid-3.19.0
или, должен я извлекать tarball
-rw-rw-r-- 1 sps sps 123115155 May 6 21:35 linux-lts-vivid_3.19.0.orig.tar.gz
Вывод для uname -r
:
user $ uname -r
3.19.0-30-generic
user $
От Wiki Debian:
Исходные пакеты предоставляют Вам все необходимые файлы, чтобы скомпилировать или иначе, создать желаемую часть программного обеспечения.
Это состоит, в его самой простой форме, трех файлов:
Восходящий поток tarball с окончанием .tar.gz
Файл описания с окончанием .dsc. Это содержит название пакета, обоих, в его имени файла, а также содержании (после того, как Источник: ключевое слово).
tarball, с любыми изменениями, внесенными в восходящий источник, плюс все файлы, создается для пакета Debian.
- Это имеет .debian.tar.gz (исходный формат: 3.0)
- или окончание .diff.gz (исходный формат: 1.0)
Это - вполне то же для Ubuntu, и в Вашем случае:
Когда Вы работаете apt-get source linux-image-$(uname -r)
, восходящий поток tarball автоматически исправляется с модификациями, перечисленными в "linux-lts-vivid_3.19.0-30.34~14.04.1.diff.gz" в "linux-lts-vivid-3.19.0":
% apt-get source linux-image-$(uname -r)
# ...
dpkg-source: info: extracting linux in linux-3.19.0
dpkg-source: info: unpacking linux_3.19.0.orig.tar.gz
dpkg-source: info: applying linux_3.19.0-30.34.diff.gz
# ...
Корень Вашего ядерного дерева - справочник linux-lts-vivid-3.19.0
.
О других файлах:
В tarball linux-lts-vivid_3.19.0.orig.tar.gz
Вы можете найти «ванильное» ядро, как выпущено вверх по течению; к этому ядру разработчики Ubuntu добавили, что участки, водители, изменили вещи, которые собраны в diff
, который сжат в linux-lts-vivid_3.19.0-30.34~14.04.1.diff.gz
.
Hmmm. Когда Вы управляете командой
apt-get source linux-image-`uname -r`
, команда должна автоматически , извлекают источник tarballs и исправляют их, чтобы создать справочник, названный после Вашего ядра. В Вашем случае похоже, что это называют 'Linux lts яркими 3.19.0' - это находится там в Вашем списке справочников.
Так, который является исходным справочником, Вы должны бежать:
cd linux-lts-vivid-3.19.0
и затем продолжают следовать инструкциям