Re: AVM Capi unter Debian (2.4.18)
Am Wed, 03 Nov 2004 um 22:38 GMT +0100 schrieb Uwe Kerstan:
Hallo Uwe,
>
> Für mich sieht es eher so aus, als wenn das Modul gar nicht neu
> compiliert wurde. Sonst würde die aktuelle Kernelversion im Modul zu
> finden sind.
>
So. Ich habe mir das ./install script noch mal genau angesehen und die
entsprechenden Schalter beim compilieren gesetzt:
# ./install -k -r
Removing driver for FRITZ!Card PCI...
./install: insserv: command not found
./install: rpm: command not found
CAPI tools/libraries already removed.
Remove completed.
Ist Modul deinstalliert?
$ ls /lib/modules/2.4.18-686/misc/fcpci.o
ls: /lib/modules/2.4.18-686/misc/fcpci.o: No such file or directory
Ok. Dann neu compilieren:
# ./install -k -c
Stopping I4L...
Generating driver...
(cd src.drv; make CARD=fcpci)
make[1]: Entering directory /usr/src/fritz/src.drv'
cc -c -DMODULE -D__KERNEL__ -DNDEBUG -D__fcpci__ -DTARGET=\"fcpci\" -O2
-Wall -I /lib/modules/uname -r/build/include main.c -o main.o
In file included from /usr/include/linux/modversions.h:117,
from /usr/include/linux/module.h:21,
from main.c:32:
/usr/include/linux/modules/i386_ksyms.ver:10: warning: EISA_bus' redefined
/usr/include/asm/processor.h:254: warning: this is the location of the
previous definition
cc -c -DMODULE -D__KERNEL__ -DNDEBUG -D__fcpci__ -DTARGET=\"fcpci\" -O2
-Wall -I /lib/modules/uname -r/build/include driver.c -o driver.o
cc -c -DMODULE -D__KERNEL__ -DNDEBUG -D__fcpci__ -DTARGET=\"fcpci\" -O2
-Wall -I /lib/modules/uname -r/build/include tables.c -o tables.o
cc -c -DMODULE -D__KERNEL__ -DNDEBUG -D__fcpci__ -DTARGET=\"fcpci\" -O2
-Wall -I /lib/modules/uname -r/build/include queue.c -o queue.o
cc -c -DMODULE -D__KERNEL__ -DNDEBUG -D__fcpci__ -DTARGET=\"fcpci\" -O2
-Wall -I /lib/modules/uname -r/build/include lib.c -o lib.o
cc -c -DMODULE -D__KERNEL__ -DNDEBUG -D__fcpci__ -DTARGET=\"fcpci\" -O2
-Wall -I /lib/modules/uname -r/build/include tools.c -o tools.o
In file included from tools.c:30:
/usr/include/linux/malloc.h:4: warning: #warning linux/malloc.h is
deprecated, use linux/slab.h instead.
ld -r -o fcpci.o main.o driver.o tables.o queue.o lib.o tools.o
../lib/fcpci-lib.o
make[1]: Leaving directory /usr/src/fritz/src.drv'
Installing driver for FRITZ!Card PCI...
./install: insserv: command not found
./install: rpm: command not found
Copying CAPI drivers...
Copying CAPI tools...
Copying driver module...
install_passive-d.html' ->
/usr/share/doc/CAPI4Linux/de/install_passive.html'
install_passive-e.html' ->
/usr/share/doc/CAPI4Linux/en/install_passive.html'
Ready.
NOTE: The format of the pppd peer scripts has been changed!
The peer scripts have been checked/updated.
Starting CAPI...
#
Modul im Kernel installieren:
# modprobe fcpci
/lib/modules/2.4.18-686/misc/fcpci.o: kernel-module version mismatch
/lib/modules/2.4.18-686/misc/fcpci.o was compiled for kernel
version 2.4.18
while this kernel is version 2.4.18-686.
/lib/modules/2.4.18-686/misc/fcpci.o: insmod
/lib/modules/2.4.18-686/misc/fcpci.o failed
/lib/modules/2.4.18-686/misc/fcpci.o: insmod fcpci failed
#
Das Modul wurde also neu compiliert, allerdings nimmt er die falsche
Kernel-Verion an. Nur das er jetzt einen 2.4.18 Kernel anstatt 2.4.18-4GB
will. _Eigentlich_ müßte ich Ihm ja nur noch beibringen 2.4.18-686 zu
erkennen. Uname liefert 2.4.18-686 zurück. Ich habe in ./install die
Variable TGZVER mal auf 2.4.18-686 gesetzt, was allerdings mit dem
Schalter -k keine Auswirkungen hat.
Ich hatte bei meinen ersten Versuchen Probleme mit den
Headern, die ja in /usr/src/kernel-headers-2.4.18-686 installiert sind.
Zum Compilieren mußte ich einige Symlinks in /usr/include/linux anlegen,
da das AVM Paket die Header-Files sonst nicht gefunden hat.
Die Frage ist jetzt, woher das Modul beim compilieren 2.4.18 anstatt
2.4.18-686 ermittelt?
> Bei meinem fcdslsl.o Modul teste ich das immer mit:
>
> $ od -s /lib/modules/*/misc/fcdslsl.o | grep kernel_version=
>
$ od -s /lib/modules/*/misc/fcpci.o | grep kernel_version=
1643140 kernel_version=2.4.18
1643340 kernel_version=2.4.18-4GB
$
Da steht auch noch die -4GB Version drin, obwohl modprobe die nicht
anmäkelt.
Viele Grüsse,
Martin Werthmöller
--
LWsystems - Systemübergreifende IT-Beratung und Service
mw@lw-systems.de * http://lw-systems.de
Besuchen Sie uns auf der "business online" am 24. und 25.11.2004 in der Halle
Münsterland, Stand F9. * http://www.business-online-messe.de
Reply to: