На этот вопрос уже есть ответ здесь:
Я использую теперь неподдерживаемый Jaunty. Однако я также использую старое неподдерживаемое ядро, которое я хочу запрограммировать.
Я пытаюсь сделать новые системные вызовы в ядре 2.6.21 и один из новых системных вызовов использует функцию 'sys_write', но чтобы использовать эту функцию, я понял, что я должен установить заголовочный файл ядра в соответствии с версией 2.6.21.
Я пробовал "apt-get install linux-headers-'uname -r'", "apt-cache search linux-headers-$(uname -r)"
но ничего не нашел...
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/module.h>
#include <linux/syscalls.h>
#include <linux/fcntl.h>
#include <asm/uaccess.h>
кроме того, вышеуказанные заголовочные файлы - это то, что я хочу.
как я могу получить заголовочный файл ядра для чего-то, что сейчас не поддерживается и отсутствует в текущем репозитории?
Ядро 2.6.21 использовалось, я думаю, на Ubuntu Feisty (7.04).
В своем комментарии вы сказали, что используете Ubuntu Jaunty - это странно, поскольку ядром для Jaunty было 2.6.28.
И Feisty, и Jaunty больше не поддерживаются, и вы не сможете устанавливать какие-либо пакеты, такие как заголовки, с помощью метода «sudo apt-get».
Настоятельно рекомендуется заменить вашу установку как минимум на версию 10.04.
И Jaunty & amp; Feisty больше нет в официальном архиве Ubuntu.
Однако всю оригинальную информацию о пакете для всех выпусков Ubuntu можно найти здесь .
Чтобы отыскать оригинальные пакеты .deb для установки, требуется немного детективной работы.
Я начну с примера для поиска заголовков 2.6.28 Jaunty linux.
Заголовки Linux существуют в главном хранилище. Поэтому сначала загрузите Sources для основного репозитория
Вам нужно будет извлечь файл Sources.
Посмотрите файл в вашем любимом редакторе.
Вы ищете бинарный файл linux-заголовков - посмотрите этот снимок экрана
Вы увидите, что я подчеркнул заголовки linux - вы увидите пакет имя и место, где вам нужно найти этот пакет
Затем укажите в браузере на начало папки, где найти пакет
http://archive.ubuntu.com / ubuntu /
Перейдите к этому имени пакета - в этом случае
pool / main / l / linux
В этой папке вы увидите все оригинальные файлы deb для каждого выпуска. Поэтому для Jaunty вы должны искать файлы, начинающиеся с linux-headers-2.6.28.
Теперь вы увидите все связанные файлы - загрузите файлы deb в соответствии с вашей архитектурой (64-битная версия заканчивается на amd64.deb, 32-битная - на i386.deb) вместе с заголовочными файлами, заканчивающимися на «all.deb»
[ 1124] Для пакетов Feisty выполните аналогичные действия, описанные выше, но на этот раз начните с файла Sources для дистрибутива Feisty.
Измените ваш sources.list
так, чтобы он указывал на
http://old-releases.ubuntu.com/
вместо текущего
http://<country-code>.ubuntu.com/