Kernelkompilierung mit 2.6.x und Modulinstallation

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
Benutzeravatar
Pix
Beiträge: 275
Registriert: 31.01.2003 14:22:21

Kernelkompilierung mit 2.6.x und Modulinstallation

Beitrag von Pix » 10.10.2004 10:51:48

Hallo,

ich habe ein Problem bei der Installation der Module unter dem Kernel 2.6.8
Bei Ausführung des Befehles 'make modules_install' kommen jede Menge
Meldungen mit 'unresolved symbols...'

Die Ursache dürfte sein, dass der Befehl 'make modules_install' NICHT auf die
modutils im Verzeichnis /usr/locale/sbin zurückgreift. In dieses Verzeichnis wurden per
Voreinstellung die Kommandos rmmod, modrobe ... bei der Installation der modutils, reinkopiert.

Frage 1:
Kann man irgendwie einen Link auf das Verzeichnis /usr/locale/sbin setzen um den Befehl
'make modules_install' zu veranlassen, die Befehle in diesem Verzeichnis zu nutzen?

Frage 2:
Ist Woody3.0r1 aktuell genug, um einen Kernel der 2.6.-Serie zu erstellen?

Vielen Dank Dirk

PS:
BS: Debian Woody 3.0r1

Fuffi
Beiträge: 92
Registriert: 28.04.2002 09:38:24
Wohnort: Wien

Beitrag von Fuffi » 10.10.2004 11:02:23

nein, woody ist nicht aktuell genug, du brauchst auf jedenfall das neue kernel-package sonst kriegst probleme mit den modules

könnte sein dass auch das die ursache für dein beschriebenes problem ist

Benutzeravatar
QT
Beiträge: 1363
Registriert: 22.07.2004 21:08:02
Wohnort: localhost

Beitrag von QT » 10.10.2004 11:10:31

Fuffi hat geschrieben:nein, woody ist nicht aktuell genug, du brauchst auf jedenfall das neue kernel-package sonst kriegst probleme mit den modules
Du meinst sicher das Paket module-init-tools, da man das kernel-package gar nicht zwingend benötigt, solange man den Kernel nach der traditionellen, manuellen Methode bauen will und nicht nach der Debianmethode. Also, module-init-tools installieren für das neue Moduleformat im 2.6er Kernel.

Fuffi
Beiträge: 92
Registriert: 28.04.2002 09:38:24
Wohnort: Wien

Beitrag von Fuffi » 10.10.2004 11:39:45

ja natürlich meinte ich module-init-tools, nicht genug nachgedacht sorry

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22455
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 10.10.2004 12:12:14

Ich denke schon man sollte den Debianweg verwenden.. Erspart vor allem einem Anfänger einiges an Ärger.Obwohl der Traditionelle Weg auch noch seine Berechtigung hat.

Benutzeravatar
Pix
Beiträge: 275
Registriert: 31.01.2003 14:22:21

Beitrag von Pix » 10.10.2004 14:38:27

Hallo,

ich erstelle den Kernel immer aus den Orginalsourcen, niemals einen von Debian gepatchen Kernel. Die module-init-tools habe ich installiert.
Ich baue den Kernel nach der traditionele Methode. Für den 2.4.x mit make dep clean bzImage modules. Zum Schluss make modules_install.

Für den 2.6.x reicht ein make und make modules_install aus.

Aber wie kann ich denn nun den 2.6.x dazu veranlassen, auf das Verzeichnis /usr/locale/sbin für die Module zurückzugreifen? Ich vermute stark, dass da das Problem mit den 'unresolved symbols' liegt?

Danke Dirk

Benutzeravatar
jack herer
Beiträge: 94
Registriert: 28.07.2003 19:48:17

Beitrag von jack herer » 10.10.2004 15:00:27

Hallo,

sofern das von Dir genannte Verzeichnis in Deiner PATH-Variable vorhanden ist, werden auch die darin vorhandenen Programme genutzt. Es sei denn, diese sind auch noch in einem anderen Verzeichnis vorhanden, das auch in deiner PATH-Variable vorhanden ist. which PROGRAMM zeigt Dir an, wo ein Programm liegt, sofern es vorhanden ist...
Der "unresolved symbols" Fehler hat aber wohl einen anderen Grund, wurde das Kernel-Image denn überhaupt erstellt?
Evtl. probierst Du doch mal make-kpkg aus...

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22455
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 10.10.2004 15:09:58

Pix hat geschrieben:Hallo,

ich erstelle den Kernel immer aus den Orginalsourcen, niemals einen von Debian gepatchen Kernel. Die module-init-tools habe ich installiert.
Ich baue den Kernel nach der traditionele Methode. Für den 2.4.x mit make dep clean bzImage modules. Zum Schluss make modules_install.

Für den 2.6.x reicht ein make und make modules_install aus.

Aber wie kann ich denn nun den 2.6.x dazu veranlassen, auf das Verzeichnis /usr/locale/sbin für die Module zurückzugreifen? Ich vermute stark, dass da das Problem mit den 'unresolved symbols' liegt?

Danke Dirk
Die Originalsourcen kann man auch auf dem Debianweg kompilieren
Aber wie kommst du dadrauf das die Module in /usr/locale liegen ? Da waren sie noch nie. Denn das macht ja auch keinen Sinn. Die haben schon immer in /lib/modules gelegen. Das war schon bei Kernel 2.0 so. Und hat sich nie geändert. Wenn man den mit der Debianmethode baut dann landen die module an einem etwas anderen Ort . Und zwar in /lib/modules/kernelversion

Benutzeravatar
Pix
Beiträge: 275
Registriert: 31.01.2003 14:22:21

Beitrag von Pix » 10.10.2004 17:41:39

Aber wie kommst du dadrauf das die Module in /usr/locale liegen
Sorry, ich habe mich wahrscheinlich falsch ausgedrückt. Die Module, welche durch 'make modules_install' erstellt werden, liegen natürlich im Verzeichnis /lib/modules.

Aber die Programme von den module-init-tools liegen im Verzeichnis /usr/locale/sbin.
Die Originalsourcen kann man auch auf dem Debianweg kompilieren
Habe ich noch nie gemacht und ist mir nicht so geläufig. Mit der 'traditionellen' Methode bin ich von jeder Distribution unabhängig.
Der "unresolved symbols" Fehler hat aber wohl einen anderen Grund, wurde das Kernel-Image denn überhaupt erstellt?
Ja.
Ich habe einfach meine .config vom 2.4.27 Kernel genommen in das Verzeichnis vom 2.6.8 Kernel gespielt, dann ein "make oldconfig" gemacht, auf alle Abfragen ein 'nein' und das war es. Wahrscheinlich ist dabei was kaputt gegangen. So habe ich das immer gemacht und hat auch immer funktioniert, zumindest in der 2.4.x Serie.

Frage:
Kann man die .config vom 2.4.27 Kernel nehmen, ein" make oldonfig " darüberschicken, auf alle Abfrage ein 'nein' und schon hat man einen frischen 2.6.x Kernel?

Dirk

Benutzeravatar
jack herer
Beiträge: 94
Registriert: 28.07.2003 19:48:17

Beitrag von jack herer » 10.10.2004 17:53:02

Pix hat geschrieben: Frage:
Kann man die .config vom 2.4.27 Kernel nehmen, ein" make oldonfig " darüberschicken, auf alle Abfrage ein 'nein' und schon hat man einen frischen 2.6.x Kernel?
Nee. Du solltest auch ein paar mal ja sagen...

Installier Dir doch nen 2.6er Kernel mit apt. Anschliessend findest Du die config unter /boot. Die kannst Du Dir dann ja anpassen.

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22455
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 10.10.2004 17:55:15

Ich würde keine alte Konfig eines 2.4.xx Kernel übernehmen. Vieleicht liegt da dein Fehler. Mit make defconfig erstellt man erst mal eine Konfig und die kann man dann mit make menuconfig zum Beispiel weiterbearbeiten.

Antworten