Forum Linux.pl
System => Konfiguracja => Wątek zaczęty przez: Earth w 2007-02-23, 18:34:08
-
Mam problem z komplikacją jądra.
---------------------------------------------------------------------------------------------------------------------
root@earth:/usr/src/linux-source-2.6.17# make dep && make bzImage && make modules
*** Warning: make dep is unnecessary now.
CHK include/linux/version.h
SPLIT include/linux/autoconf.h -> include/config/*
CHK include/linux/compile.h
GZIP kernel/config_data.gz
IKCFG kernel/config_data.h
CC kernel/configs.o
LD kernel/built-in.o
GEN .version
CHK include/linux/compile.h
UPD include/linux/compile.h
CC init/version.o
LD init/built-in.o
LD .tmp_vmlinux1
drivers/built-in.o: In function `ide_wait_not_busy':
(.text+0x86d11): undefined reference to `touch_nmi_watchdog'
make: *** [.tmp_vmlinux1] Błąd 1
root@earth:/usr/src/linux-source-2.6.17#
---------------------------------------------------------------------------------------------------------------------
Tak wygląda plik .config:
{ucięte - za długie...}
Kaka
-
2007-02-23 18:34:08 Earth napisał:
> Mam problem z komplikacją jądra.
>
> ---------------------------------------------------------------------------------------------------------------------
> root@earth:/usr/src/linux-source-2.6.17# make dep && make bzImage && make
> modules
> *** Warning: make dep is unnecessary now.
. . .
. . .
. . .
. . .
> CONFIG_GENERIC_HARDIRQS=y
> CONFIG_GENERIC_IRQ_PROBE=y
> CONFIG_X86_BIOS_REBOOT=y
> CONFIG_KTIME_SCALAR=y
Prawdopodobnie nie wyczysciles pozostalosci zaleznosci miedzy modulami (make dep) po poprzedniej kompilacji.
przed "make dep" zastosuj "make clean" do wyczyszczenia smieci lub "make mrproper" ktory usunie smieci oraz dodatkowo plik po poprzedniej konfiguracji ".config" :-)
-
Niestety nie pomaga.
-
2007-02-23 18:34:08 Earth napisał:
> Mam problem z komplikacją jądra.
>
> ---------------------------------------------------------------------------------------------------------------------
> root@earth:/usr/src/linux-source-2.6.17# make dep && make bzImage && make
> modules
W 2.6 spróbuj tak tak: make clean&& make all&& make modules_install&& make install.
--
Maciek
-
W make all pokazuje się to samo. Wydaje mi się, że coś w konfiguracji tego kernela jest źle.
-
w jaki sposób konfigurowałeś to jądro ?
-
Przez make xconfig
-
a na podstawie jakiego startego/działającego config'a, czy wszystkie opcje chciałeś poprawnie ustawić ręcznie ?
P.S. poczytaj o 'make oldconfig'
-
2007-02-23 23:43:00 chmooreck napisał:
Na podstawie nowego i wszystko chciałem ustawić ręcznie.
-
2007-02-24 08:45:40 Earth napisał:
> Na podstawie nowego i wszystko chciałem ustawić ręcznie.
To weź sobie jako bazę jakiś działający config, tylko dostosuj go do swoich potrzeb...
-
2007-02-23 18:34:08 Earth napisał:
> Mam problem z komplikacją jądra.
> drivers/built-in.o: In function `ide_wait_not_busy':
> (.text+0x86d11): undefined reference to `touch_nmi_watchdog'
> make: *** [.tmp_vmlinux1] Błąd 1
> root@earth:/usr/src/linux-source-2.6.17#
miałem ten sam problem
przy wyłączeniu SMP musi byś zaznaczona opcja:
Local APIC support on uniprocessors
tak na marginesie proponowałbym zwrócić większą uwagę na tytuł wypowiedzi.
"Kompilacja kernel" IMO jest zbyt ogólny.
-
Jak widać, sprawa tyczy się wersji 2.6.17.
Polecam zajrzeć do kodu jądra (funkcja touch_nmi_watchdog() zdefiniowana jest w arch/i386/nmi.c) i sprawdzić, czy wszystko jest tam OK (tzn. czy jest tam wiersz EXPORT_SYMBOL(touch_nmi_watchdog)) i sprawdzić, czy plik ten jest przede wszystkim kompilowany (w katalogu tym jest plik nmi.o) - jeśli tego pliku nie ma, wina leży tylko i wyłącznie po stronie configa