Ein Modul selbst kompilieren.

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
Benutzeravatar
suntsu
Beiträge: 2947
Registriert: 03.05.2002 10:45:12
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: schweiz
Kontaktdaten:

Ein Modul selbst kompilieren.

Beitrag von suntsu » 10.06.2003 20:19:07

Tag

Ich versuche mich gerade am Mindstorm. Leider hab ich ein Problem wenn ich das Modul für USB-Infrarot installieren will.

Diese meldung bekomme ich wenn ich make install mache.

Code: Alles auswählen

/lib/modules/2.4.20/kernel/LegoUSB.o: kernel-module version mismatch
        /lib/modules/2.4.20/kernel/LegoUSB.o was compiled for kernel version 2.4.18
        while this kernel is version 2.4.20.
Wie kann ich das selber kompilieren?


gruss
manuel

Benutzeravatar
x87
Beiträge: 347
Registriert: 17.03.2003 20:04:02
Wohnort: /home/Köln

Beitrag von x87 » 10.06.2003 20:38:04

Hallo
wo hast du das Modul denn her?
hast du es selbst kompiliert?
Das Modul wurde für den Kernel 2.4.18 erzeugt ich glaube nicht das es mit
2.4.20 läuft
Mit freundlichen Grüßen
udo

Benutzeravatar
blackm
Moderator und Co-Admin
Beiträge: 5921
Registriert: 02.06.2002 15:03:17
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von blackm » 10.06.2003 20:44:38

Hi suntsu,

also kompilieren über den Makefile (wenn da sowas ist) und dann einfach nach /lib/modules/2.4.20/kernel/ verschieben.

by, Martin
Schöne Grüße

Martin

Neu im Forum? --> https://wiki.debianforum.de/debianforum ... tensregeln
Log- und Konfigurationsdatein? --> pastebin.php
Forum unterstützen? --> https://wiki.debianforum.de/debianforum.de/Spenden

Benutzeravatar
suntsu
Beiträge: 2947
Registriert: 03.05.2002 10:45:12
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: schweiz
Kontaktdaten:

Beitrag von suntsu » 10.06.2003 20:47:57

Hi blackm.

Jo ich hab ein makefile, in dem kann ich auch die kernel-Version angeben >> leider ohne erfolg.

Kann man da sonst noch was machen?


wenn jemand Zeit hat, hier der Link zur source.


http://prdownloads.sourceforge.net/lego ... z?download

gruss

Benutzeravatar
x87
Beiträge: 347
Registriert: 17.03.2003 20:04:02
Wohnort: /home/Köln

Beitrag von x87 » 10.06.2003 21:16:51

ich hab's mal versucht
hier ist mein Makefile

Code: Alles auswählen

# Get me using uname -r
#hier geändert
KERNEL_VER = 2.4.20

CFLAGS = -O2 -Wall -Wstrict-prototypes -fomit-frame-pointer -pipe -D__KERNEL__ -DMODULE=1 -DCONFIG_USB_DEBUG -Iinclude

#hier geändert
MODULE_DIR = /lib/modules/$(KERNEL_VER)/kernel/drivers/usb/

LegoUSB.o: LegoUSB_driver.o
	ld -r -o LegoUSB.o LegoUSB_driver.o

install: LegoUSB.o
	/sbin/modprobe -r LegoUSB
	cp LegoUSB.o $(MODULE_DIR)
	depmod -q
	/sbin/modprobe LegoUSB debug=1 config_num=4 usb_reset=1
	mknod --mode=a=rw /dev/usb/lego0 c 180 200	
	cp -R include /usr/local/include/LegoUSB

clean:
	rm -f LegoUSB_driver.o LegoUSB.o
	echo "You might want to run 'make uninstall' if you want to /truly/ clean out what I installed!"

uninstall: clean
	/sbin/modprobe -r LegoUSB
	rm -f $(MODULE_DIR)/LegoUSB.o
	rm -f /dev/usb/lego0
	rm -rf /usr/local/include/LegoUSB
mfg

udo

EDIT: für die bessere Lesbarbeit hab ich mal die code Tags eingefügt (blackm)

Benutzeravatar
x87
Beiträge: 347
Registriert: 17.03.2003 20:04:02
Wohnort: /home/Köln

Beitrag von x87 » 10.06.2003 21:32:43

@ blackm
danke für die code Tags
jetzt hab ich auch raus wie man das macht :D

mfg

udo

Benutzeravatar
suntsu
Beiträge: 2947
Registriert: 03.05.2002 10:45:12
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: schweiz
Kontaktdaten:

Beitrag von suntsu » 10.06.2003 22:22:24

Tag.

Danke für eure Hilfe.

Bin allerdings noch nicht weiter.

make geht, bei make install bekomme ich bei dieser Zeile einen Fehler.

Code: Alles auswählen

/sbin/modprobe LegoUSB debug=1 config_num=4 usb_reset=1
Makefile ist angepasst.

Test auf erster Maschine(uname -r = 2.4.20 ) Kompiliert(make) auch auf dieser.
Error

Code: Alles auswählen

/lib/modules/2.4.20/kernel/drivers/usb/LegoUSB.o: kernel-module version mismatch
        /lib/modules/2.4.20/kernel/drivers/usb/LegoUSB.o was compiled for kernel version 2.4.18
        while this kernel is version 2.4.20.
Danach test auf meinem Webserver(uname -r = 2.4.18 ) Kompiliert auf diesem(2.4.18 )
Error:

Code: Alles auswählen

/lib/modules/2.4.18/kernel/drivers/usb/LegoUSB.o: kernel-module version mismatch
        /lib/modules/2.4.18/kernel/drivers/usb/LegoUSB.o was compiled for kernel version 2.4.20
        while this kernel is version 2.4.18.
Und ich hab jeweils den tarball neu entpackt, das Makefile geändert, dann make und danach make install.

Hab ich noch was falsch gemacht, oder sollte es so gehen?

gruss
manuel

ps. me ist ein bisschen confused

Benutzeravatar
x87
Beiträge: 347
Registriert: 17.03.2003 20:04:02
Wohnort: /home/Köln

Beitrag von x87 » 10.06.2003 22:29:06

Hallo
sorry ich hab das etwas schlecht beschrieben
ich hab nicht die 1. Zeile sondern die 3. Zeile geändert

Code: Alles auswählen

KERNEL_VER = 2.4.20
Mit freundlichen Grüßen

udo

Benutzeravatar
suntsu
Beiträge: 2947
Registriert: 03.05.2002 10:45:12
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: schweiz
Kontaktdaten:

Beitrag von suntsu » 10.06.2003 22:36:45

jo, ich habs auch so übernommen. Geht leider ned.

Benutzeravatar
x87
Beiträge: 347
Registriert: 17.03.2003 20:04:02
Wohnort: /home/Köln

Beitrag von x87 » 10.06.2003 22:52:47

Wenn du das nochmal wiederholst
suntsu hat geschrieben:

make geht, bei make install bekomme ich bei dieser Zeile einen Fehler.

Code: Alles auswählen

/sbin/modprobe LegoUSB debug=1 config_num=4 usb_reset=1

Makefile ist angepasst.

[/quote]

und modconfig startest  hast du dann ein modul legousb?

Mit freundlichen Grüßen

udo

Benutzeravatar
blackm
Moderator und Co-Admin
Beiträge: 5921
Registriert: 02.06.2002 15:03:17
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von blackm » 10.06.2003 23:10:09

suntsu, du hast doch sicherlich den Quellcode des laufen Kernel unter /usr/src/linux zu liegen, oder? Um sicher zu gehen das es auch die richtige Version ist wirf mal einen Blick in die Datei :/usr/src/linux/include/linux/version.h
Die Fehlermeldung compiled for kernel version 2.4.18 (auf der ersten Maschine) sieht so aus als wäre der Quellcode ne andere Version.

by, Martin
Schöne Grüße

Martin

Neu im Forum? --> https://wiki.debianforum.de/debianforum ... tensregeln
Log- und Konfigurationsdatein? --> pastebin.php
Forum unterstützen? --> https://wiki.debianforum.de/debianforum.de/Spenden

Antworten