Fehler beim kompilieren vom eigenen Kernel
Fehler beim kompilieren vom eigenen Kernel
Hallo,
beim kompilieren meines eigenen Kernels erhalte ich eine Fehlermeldung und ich komme nicht mehr weiter.
Ich habe folgende Schritte durchgeführt.
download der kernelquellen von http://www.kernel.org/pub/linux/kernel/v2.6/?C=S;O=D linux-2.6.23.17.tar.gz
entpacken nach /usr/src/ und ln -s /usr/src/linux-2.6.23.17 /usr/src/linux
cp /boot/config-2.6.18-6-amd64 ./.config
make oldconfig
make menuconfig
make-kpkg kernel_image modules_image
der erste Teil make-kpkg kernel_image wird noch ausgeführt, doch bei modules_image erhalte ich die Fehler
make-kpkg modules_image
exec debian/rules DEBIAN_REVISION=2.6.23.17-10.00.Custom modules_image
for module in ; do \
if test -d $module; then \
(cd $module; \
if ./debian/rules KVERS="2.6.23.17" KSRC="/usr/src/linux" \
KMAINT="Unknown Kernel Package Maintainer" KEMAIL="unknown@unconfigured.in.etc.kernel-pkg.conf" \
KPKG_DEST_DIR="/usr/src/linux/.." \
KPKG_MAINTAINER="Unknown Kernel Package Maintainer" \
KPKG_EXTRAV_ARG="" \
ARCH="x86_64" \
KDREV="2.6.23.17-10.00.Custom" kdist_image; then \
echo "Module $module processed fine"; \
else \
echo "Module $module failed."; \
if [ "X" != "X" ]; then \
echo "Perhaps $module does not understand --rootcmd?"; \
echo "If you see messages that indicate that it is not"; \
echo "in fact being built as root, please file a bug "; \
echo "against $module."; \
fi; \
echo "Hit return to Continue"; \
read ans; \
fi; \
); \
else \
echo "Module $module does not exist"; \
echo "Hit return to Continue?"; \
fi; \
done
Ich habe schon mal im Forum gesucht, aber ich finde keine passenden Eintrag, wer kann helfen, danke schon im Voraus.
beim kompilieren meines eigenen Kernels erhalte ich eine Fehlermeldung und ich komme nicht mehr weiter.
Ich habe folgende Schritte durchgeführt.
download der kernelquellen von http://www.kernel.org/pub/linux/kernel/v2.6/?C=S;O=D linux-2.6.23.17.tar.gz
entpacken nach /usr/src/ und ln -s /usr/src/linux-2.6.23.17 /usr/src/linux
cp /boot/config-2.6.18-6-amd64 ./.config
make oldconfig
make menuconfig
make-kpkg kernel_image modules_image
der erste Teil make-kpkg kernel_image wird noch ausgeführt, doch bei modules_image erhalte ich die Fehler
make-kpkg modules_image
exec debian/rules DEBIAN_REVISION=2.6.23.17-10.00.Custom modules_image
for module in ; do \
if test -d $module; then \
(cd $module; \
if ./debian/rules KVERS="2.6.23.17" KSRC="/usr/src/linux" \
KMAINT="Unknown Kernel Package Maintainer" KEMAIL="unknown@unconfigured.in.etc.kernel-pkg.conf" \
KPKG_DEST_DIR="/usr/src/linux/.." \
KPKG_MAINTAINER="Unknown Kernel Package Maintainer" \
KPKG_EXTRAV_ARG="" \
ARCH="x86_64" \
KDREV="2.6.23.17-10.00.Custom" kdist_image; then \
echo "Module $module processed fine"; \
else \
echo "Module $module failed."; \
if [ "X" != "X" ]; then \
echo "Perhaps $module does not understand --rootcmd?"; \
echo "If you see messages that indicate that it is not"; \
echo "in fact being built as root, please file a bug "; \
echo "against $module."; \
fi; \
echo "Hit return to Continue"; \
read ans; \
fi; \
); \
else \
echo "Module $module does not exist"; \
echo "Hit return to Continue?"; \
fi; \
done
Ich habe schon mal im Forum gesucht, aber ich finde keine passenden Eintrag, wer kann helfen, danke schon im Voraus.
Re: Fehler beim kompilieren vom eigenen Kernel
es werden anscheinend keine Sourcen in "/usr/src/modules" genfunden, welche externen Module möchtest du eigentlich über modules_image erzeugen ?tcash hat geschrieben: der erste Teil make-kpkg kernel_image wird noch ausgeführt, doch bei modules_image erhalte ich die FehlerCode: Alles auswählen
make-kpkg modules_image exec debian/rules DEBIAN_REVISION=2.6.23.17-10.00.Custom modules_image for module in ; do \ ...
Gruß
gms
Re: Fehler beim kompilieren vom eigenen Kernel
Ich habe vorher mit Gentoo gearbeitet und bei meinen manuell erstellten Kernel musste ich für alle mit M belegten Kernel optionen beim kompilieren folgendes Kommando absetzen
make && make modules_install
wobei der 2. Teil make modules_install die Kernelmodule erzeugt hat.
Ich hoffe ja nun nicht, dass ich völlig falsch liege und das Kommando modules_image auch die Kernelmodule erzeugt.
Gruß tcash
make && make modules_install
wobei der 2. Teil make modules_install die Kernelmodule erzeugt hat.
Ich hoffe ja nun nicht, dass ich völlig falsch liege und das Kommando modules_image auch die Kernelmodule erzeugt.
Gruß tcash
Re: Fehler beim kompilieren vom eigenen Kernel
die Module die aus den Kernel-Sourcen erzeugt werden, werden schon mit dem "kernel_image" erzeugt und auch beim Installieren des Pakets mitinstalliert
Mit "modules_image" könntest du für zusätzliche Treiber von Fremdherstellern ( z.B nVidia Grafiktreiber, usw ) eigene Debianpakete bauen.
Dein neuer Kernel müßte daher mit "dpkg -i /usr/src/linux-image...usw" installierbar sein.
Gruß
gms
edit: Ich habe es erst jetzt geschnallt, also spät aber doch, auch dir ein "Willkommen im Forum!"
Mit "modules_image" könntest du für zusätzliche Treiber von Fremdherstellern ( z.B nVidia Grafiktreiber, usw ) eigene Debianpakete bauen.
Dein neuer Kernel müßte daher mit "dpkg -i /usr/src/linux-image...usw" installierbar sein.
Gruß
gms
edit: Ich habe es erst jetzt geschnallt, also spät aber doch, auch dir ein "Willkommen im Forum!"
Re: Fehler beim kompilieren vom eigenen Kernel
Peinlich, ich sollte mich doch ein wenig besser einarbeiten, aber man hat ja wenig Zeit, meistens abends ein paar Stunden und dann möchte man es ja auch schnell fertig bekommen, danke!
Ich habe gerade im Wiki folgendes zum Kernel kompilieren gelesen
make bzImage
make modules
make modules_install
cp /usr/src/linux/arch/i386/boot/bzImage /boot/NEWKERNEL
Das kommt mir bekannt vor, aber es scheinen ja alte Befehle zum kompilieren vom Kernel zu sein, wo besteht eigentlich der Vorteil zu den neuen Befehlen?
make-kpkg kernel_image
dpkg -i /usr/src/linux-image...usw"
Gruß tcash
Ich habe gerade im Wiki folgendes zum Kernel kompilieren gelesen
make bzImage
make modules
make modules_install
cp /usr/src/linux/arch/i386/boot/bzImage /boot/NEWKERNEL
Das kommt mir bekannt vor, aber es scheinen ja alte Befehle zum kompilieren vom Kernel zu sein, wo besteht eigentlich der Vorteil zu den neuen Befehlen?
make-kpkg kernel_image
dpkg -i /usr/src/linux-image...usw"
Gruß tcash
Re: Fehler beim kompilieren vom eigenen Kernel
Hi,
Btw sieht mein make-kpkg Aufruf so aus:Das target "modules" muss also auch mit dazu. Bin mir aber nicht sicher, ob es nicht doch im kernel_image drin ist.
[1] http://wiki.debianforum.de/DebianizedLinuxKernel
Das sind keine alten, das ist der klassische Weg.tcash hat geschrieben:make bzImage
make modules
make modules_install
cp /usr/src/linux/arch/i386/boot/bzImage /boot/NEWKERNEL
Debian way [1].tcash hat geschrieben:Das kommt mir bekannt vor, aber es scheinen ja alte Befehle zum kompilieren von Kernel zu sein, wo besteht eigentlich der Vorteil zu den neuen Befehlen?
Btw sieht mein make-kpkg Aufruf so aus:
Code: Alles auswählen
CONCURRENCY_LEVEL=2 make-kpkg --uc --us --initrd --revision=0.3 --append-to-version=-ibm2g --arch-in-name kernel_image modules 2>&1 | tee make3.log
[1] http://wiki.debianforum.de/DebianizedLinuxKernel
Gruß cirrussc
--------------------
„Der Mensch steigert zur Zeit die Nutzung dessen, was seiner Willkür unterliegt - und kommt sich sehr klug dabei vor.“ H. Gruhl
--------------------
„Der Mensch steigert zur Zeit die Nutzung dessen, was seiner Willkür unterliegt - und kommt sich sehr klug dabei vor.“ H. Gruhl
-
- Beiträge: 3472
- Registriert: 30.11.2005 10:32:22
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Wald
Re: Fehler beim kompilieren vom eigenen Kernel
Bei mir war ein immer vollkommen ausreichend.
Code: Alles auswählen
make-kpkg --initrd kernel_image
Re: Fehler beim kompilieren vom eigenen Kernel
ja, so wie es bei Debian das "make-kpkg" Kommando gibt, gibt es bei Gentoo das "genkernel" Kommando. Das sind im Prinzip Wrapper für die altbewährte Methode:
Mit "make-kpkg" werden allerdings die gebauten Kernel noch zusätzlich in das Debian-Paketmanagement integriert und können daher sehr leicht auch wieder deinstalliert werden. Wenn die Option "--initrd" verwendet wird, dann wird auch bei der Installation automatisch eine "initrd" erzeugt, der installierte Kernel kann auch automatisiert in die Grub-Konfiguration eingetragen werden, ein zusätzliches Paket mit den Kernel-Headern kann erzeugt werden, ....usw.
Gruß
gms
Code: Alles auswählen
make bzImage modules && make modules_install install
ohne die Module könnte kaum ein vernünftiges "linux-image" Debianpaket erzeugt werden, das Target "modules" ist also im "kernel_image" enthalten und braucht nicht extra angegeben werdencirrussc hat geschrieben: Das target "modules" muss also auch mit dazu. Bin mir aber nicht sicher, ob es nicht doch im kernel_image drin ist.
Gruß
gms
Re: Fehler beim kompilieren vom eigenen Kernel
Ja, irgend wie leuchtet das ein.gms hat geschrieben:ohne die Module könnte kaum ein vernünftiges "linux-image" Debianpaket erzeugt werden, das Target "modules" ist also im "kernel_image" enthalten und braucht nicht extra angegeben werden
Gruß cirrussc
--------------------
„Der Mensch steigert zur Zeit die Nutzung dessen, was seiner Willkür unterliegt - und kommt sich sehr klug dabei vor.“ H. Gruhl
--------------------
„Der Mensch steigert zur Zeit die Nutzung dessen, was seiner Willkür unterliegt - und kommt sich sehr klug dabei vor.“ H. Gruhl
Re: Fehler beim kompilieren vom eigenen Kernel
Warum machst Du ein "modules_image"? Benötigst Du doch für einen funktionierenden Kernel nicht. Das ist eine bessere Variantetcash hat geschrieben: der erste Teil make-kpkg kernel_image wird noch ausgeführt, doch bei modules_image erhalte ich die FehlerCode: Alles auswählen
make-kpkg modules_image
Code: Alles auswählen
make-kpkg kernel_image --initrd
ciao
katzenfan
PS:. Das steht dazu im Anwenderhandbuch:
--initrd
Wenn make-kpkg die Option kernel-image übergeben wurde, so werden durch diese Option alle zusätzlichen Aktionen aufgerufen, die notwendig sind, um eine passende Init-RAM-Disk zu erzeugen.
Hierbei ist zu beachten, dass ein zusätzlicher Patch benötigt wird, der bereits in den Debian-Kernel-Sourcen enthalten ist. Wird dieser „cramfs“-Patch nicht verwendet, so muss die Konfiguration von mkinird so angepasst werden, dass cramfs nicht benutzt wird.