LINUX.ORG.RU

Не могу скомпилировать ядро


0

0

Мне нужно было перекомпилировать ядро с поддержкой NTFS. Ядро 2.4.18-3. Сначало я использовал команду make dep, потом make bzImage. Когда нашёл полученный имидж в папке arch/$(ARCH)/boot его как положенно включил в загрузчик граб. При загрузки сообщение kernell panic дальше не грузится. Ладно, загружаю со старым ядром Linux. Исходники ядра взяты с дистрибутива RedHat 7.3. Оттуда же беру файл конфигурации ядра для своей машины. То есть пытаюсь скомпилировать такое же ядро, что и при установке ставится на мою машину, теми же командами. Linux с этим ядром грузится, но выдаётся ошибка что не найден какой то модуль. Ладно перекомпилирую его такой командой make dep clean modules modules_install. Минут через 20-30 выдаётся такая ошибка: cc -D__KERNEL__ -I/usr/src/linux-2.4.18-3/include -Wall -Wstrict-prototypes -Wn o-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -Wno-unuse d -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include /usr/src/linux-2.4.18-3/include/linux/modversions.h -DKBUILD_BASENAME=sysi86 -c -o sysi86.o sysi86.c make[2]: *** Нет правила для сборки цели `/usr/src/linux-2.4.18-3/include/linux/ compile.h', требуемой для `sysinfo.o'. Останов. make[2]: Выход из каталог `/usr/src/linux-2.4.18-3/abi/svr4' make[1]: *** [_modsubdir_svr4] Ошибка 2 make[1]: Выход из каталог `/usr/src/linux-2.4.18-3/abi' make: *** [_mod_abi] Ошибка 2 Смотрел такого файла (compile.h) там где нужно нет. Есть файл compiler.h. И ещё если к файлу compile.h обращаются только 2 других файла, то к файлу compiler.h обращаются больше 10. Может это просто ошибка и нужно исправить там где написано #include <linux/compile.h> на <linux/compiler.h>? Помогите плз!!! И ещё каким принципом руководствоваться: что лучше компилировать в ядро или в модуль?? И может есть другой способ бодключить файлов систему NTFS?? Если ответите по почте буду благодарен. E-mail:admin_viper@mail.ru. P.S. На настоящий момент Linuxом пользуюсь лишь второй день.

anonymous

make oldconfig (если есть конфиг-файл)
или make menuconfig
make dep
make bzImage
make install
make modules
make modules_install
и обновить grub
(в лило пишется lilo)

anonymous
()

Если ты второй день линуксишь, то ядро у тебя стандартное и нтфс оно должно держать.

SteelRat
()

Может быть и стандартное ядро более поздней версии его и держит, но то что с Linux RedHat 7.3 постовляется, точно не поддерживается, я когда пытался подключить диск с нтфс, он так и писал что ядро эту файловую систему не поддерживает. Ладно щас вроде блогадаря совету перед SteelRat ядро скомпилировалось нормально, только я не пойму почему те команды которые я писал не подходят, в справке было именно так написано как я делал. Все команды которые посоветовал уважаемый ананимус, нормально сработали, единственно в конце отработки команды make modules_install выдалась ошибка но она как я думаю на работу ядра ни как не повлияло, глюков и ошибок ни каких не выдается. Единственно вопрос, а что команда make clean не нужна??? И вообще для чего она нужна, я так понял она убирает лишние исходные коды, а что это за лишние коды??? И ещё;-)))) Мне так и не ответили, что лучше ввиде модуля компилить, а что встраивать в ядро???

anonymous
()

Sorry za translit,ja skachal distr Slacku so shvecii,Pitalsja perekompilit` jadro 2.4.18 s diska.Resultat -krnel panic! Potom skachal jadro 2.4.18 s ftp-vsje zabegalo!Poprobuj drugoe jadro iz nadjezhnih istochnikov.

anonymous
()

Прошлый пост длинный проимелся, поэтому лень было даже
подписываться в links.
Короче, уберет она, скажем *.o, ну а толку с этого?
Ну метров 20 выгадаешь.
Лучше как можно больше всего компилить в виде модулей, но
нежелательно компилить в виде модуля поддержку жесткого диска (файловой
системы), иначе придется делать initrd и прочий гемморой.
Не стоит делать модулем поддержку ELF и чего там вторым пунктом
стоит.
А остальное - как получится. Не все же можно модулем сделать.
Нежелательно встраивать в ядро звук или bttv, потому что команды
для них не сможешь прописать.

А справку свою выкини нафиг.
В ядре есть последовательность команд - читай внимательно readme.

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