Nachtrag: Wlan/Centrino/Ndiswrapper
Hallo, hatte noch vergessen, die kryptische Fehlermeldung beizufügen - sorry! linux:/home/wh/ndiswrapper/ndiswrapper-0.7 # make install make -C driver install make[1]: Entering directory `/home/wh/ndiswrapper/ndiswrapper-0.7/driver' cc -DDRV_VERSION=\"0.7\" -DLINUX -D__KERNEL__ -DMODULE -I/lib/modules/2.4.21-202-default/build/include -Wall -Wstrict-prototypes -fomit-frame-pointer -fno-strict-aliasing -pipe -mpreferred-stack-boundary=2 -O2 -c -o wrapper.o wrapper.c In file included from /usr/include/linux/module.h:20, from wrapper.c:16: /usr/include/asm/module.h:54:2: #error unknown processor family In file included from /usr/include/linux/mm.h:205, from /usr/include/asm/pci.h:7, from /usr/include/linux/pci.h:677, from wrapper.c:25: /usr/include/linux/page-flags.h:119: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function) /usr/include/linux/page-flags.h:119: error: requested alignment is not a constant In file included from wrapper.c:27: /usr/include/linux/netdevice.h:165: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function) /usr/include/linux/netdevice.h:165: error: requested alignment is not a constant In file included from /usr/include/linux/irq.h:19, from /usr/include/asm/hardirq.h:6, from /usr/include/linux/interrupt.h:10, from /usr/include/linux/netdevice.h:489, from wrapper.c:27: /usr/include/asm/irq.h:16:25: irq_vectors.h: Datei oder Verzeichnis nicht gefunden In file included from /usr/include/asm/hardirq.h:6, from /usr/include/linux/interrupt.h:10, from /usr/include/linux/netdevice.h:489, from wrapper.c:27: /usr/include/linux/irq.h:67: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function) /usr/include/linux/irq.h:67: error: requested alignment is not a constant /usr/include/linux/irq.h:69: error: `NR_IRQS' undeclared here (not in a function) In file included from /usr/include/linux/irq.h:71, from /usr/include/asm/hardirq.h:6, from /usr/include/linux/interrupt.h:10, from /usr/include/linux/netdevice.h:489, from wrapper.c:27: /usr/include/asm/hw_irq.h:28: error: `NR_IRQS' undeclared here (not in a function) /usr/include/asm/hw_irq.h:31: error: `NR_IRQS' undeclared here (not in a function) In file included from /usr/include/linux/interrupt.h:10, from /usr/include/linux/netdevice.h:489, from wrapper.c:27: /usr/include/asm/hardirq.h:13: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function) /usr/include/asm/hardirq.h:13: error: requested alignment is not a constant wrapper.c:31:28: net/iw_handler.h: Datei oder Verzeichnis nicht gefunden In file included from ndiswrapper.h:33, from ntoskernel.h:17, from ndis.h:18, from wrapper.c:38: /usr/include/linux/version.h:2:2: #error "=======================================================" /usr/include/linux/version.h:3:2: #error "You should not include /usr/include/{linux,asm}/ header" /usr/include/linux/version.h:4:2: #error "files directly for the compilation of kernel modules." /usr/include/linux/version.h:5:2: #error "" /usr/include/linux/version.h:6:2: #error "glibc now uses kernel header files from a well-defined" /usr/include/linux/version.h:7:2: #error "working kernel version (as recommended by Linus Torvalds)" /usr/include/linux/version.h:8:2: #error "These files are glibc internal and may not match the" /usr/include/linux/version.h:9:2: #error "currently running kernel. They should only be" /usr/include/linux/version.h:10:2: #error "included via other system header files - user space" /usr/include/linux/version.h:11:2: #error "programs should not directly include <linux/*.h> or" /usr/include/linux/version.h:12:2: #error "<asm/*.h> as well." /usr/include/linux/version.h:13:2: #error "" /usr/include/linux/version.h:14:2: #error "To build kernel modules please do the following:" /usr/include/linux/version.h:15:2: #error "" /usr/include/linux/version.h:16:2: #error " o Have the kernel sources installed" /usr/include/linux/version.h:17:2: #error "" /usr/include/linux/version.h:18:2: #error " o Make sure that the symbolic link" /usr/include/linux/version.h:19:2: #error " /lib/modules/`uname -r`/build exists and points to" /usr/include/linux/version.h:20:2: #error " the matching kernel source directory" /usr/include/linux/version.h:21:2: #error "" /usr/include/linux/version.h:22:2: #error " o Configure kernel sources:" /usr/include/linux/version.h:23:2: #error " - cd /usr/src/linux" /usr/include/linux/version.h:24:2: #error " - make mrproper" /usr/include/linux/version.h:25:2: #error " - make cloneconfig" /usr/include/linux/version.h:26:2: #error " - make dep" /usr/include/linux/version.h:27:2: #error "" /usr/include/linux/version.h:28:2: #error " o When compiling, make sure to use the following" /usr/include/linux/version.h:29:2: #error " compiler option to use the correct include files:" /usr/include/linux/version.h:30:2: #error "" /usr/include/linux/version.h:31:2: #error " -I/lib/modules/`uname -r`/build/include" /usr/include/linux/version.h:32:2: #error "" /usr/include/linux/version.h:33:2: #error " instead of" /usr/include/linux/version.h:34:2: #error "" /usr/include/linux/version.h:35:2: #error " -I/usr/include/linux" /usr/include/linux/version.h:36:2: #error "" /usr/include/linux/version.h:37:2: #error " Please adjust the Makefile accordingly." /usr/include/linux/version.h:38:2: #error "=======================================================" In file included from ntoskernel.h:17, from ndis.h:18, from wrapper.c:38: ndiswrapper.h:43:40: missing binary operator before token "(" ndiswrapper.h:46:26: linux/tqueue.h: Datei oder Verzeichnis nicht gefunden ndiswrapper.h:48:1: Warnung: "INIT_WORK" redefined In file included from /usr/include/linux/aio.h:5, from /usr/include/linux/sched.h:182, from /usr/include/linux/module.h:9, from wrapper.c:16: /usr/include/linux/workqueue.h:44:1: Warnung: this is the location of the previous definition In file included from ntoskernel.h:17, from ndis.h:18, from wrapper.c:38: ndiswrapper.h:53:41: missing binary operator before token "(" In file included from wrapper.c:38: ndis.h:383: error: field `irq_bh' has incomplete type ndis.h:396: error: field `xmit_work' has incomplete type ndis.h:416: error: field `hangcheck_work' has incomplete type ndis.h:425: error: field `statcollector_work' has incomplete type ndis.h:442: error: field `packet_recycler' has incomplete type ndis.h:449: error: field `set_rx_mode_work' has incomplete type In file included from wrapper.c:39: iw_ndis.h:23: Warnung: `struct iw_request_info' declared inside parameter list iw_ndis.h:23: Warnung: its scope is only this definition or declaration, which is probably not what you want wrapper.c: In function `hangcheck': wrapper.c:281: Warnung: implicit declaration of function `schedule_task' wrapper.c: In function `hangcheck_add': wrapper.c:300: Warnung: implicit declaration of function `INIT_TQUEUE' wrapper.c: In function `ndis_init_one': wrapper.c:968: Warnung: implicit declaration of function `pci_request_regions' wrapper.c:1000: Warnung: implicit declaration of function `pci_release_regions' wrapper.c: In function `ndis_remove_one': wrapper.c:1053: Warnung: implicit declaration of function `flush_scheduled_tasks' wrapper.c:1566:41: missing binary operator before token "(" wrapper.c: In function `wrapper_init': wrapper.c:1569: error: too few arguments to function `call_usermodehelper' wrapper.c: At top level: wrapper.c:186: Warnung: `ndis_get_link' defined but not used make[1]: *** [wrapper.o] Fehler 1 make[1]: Leaving directory `/home/wh/ndiswrapper/ndiswrapper-0.7/driver' make: *** [install] Fehler 2 linux:/home/wh/ndiswrapper/ndiswrapper-0.7 # Vielleicht hat irgendjemand eine Idee? Danke, Wolfgang _________________________________________________________ Wolfgang Hoppe Wachenheimer Strasse 5 - D-65835 Liederbach am Taunus
Hallo Wolfgang, hallo Leute, eine Bitte vorweg: Nachträge bitte künftig als Antwort auf die eigene Mail senden, dann steht alles in einem Thread und ist nicht quer über die Mailingliste verteilt ;-) Am Dienstag, 27. April 2004 17:02 schrieb Wolfgang Hoppe:
hatte noch vergessen, die kryptische Fehlermeldung beizufügen -
linux:/home/wh/ndiswrapper/ndiswrapper-0.7 # make install [...] /usr/include/asm/irq.h:16:25: irq_vectors.h: Datei oder Verzeichnis nicht gefunden [...] net/iw_handler.h: Datei oder Verzeichnis nicht gefunden
Der beliebteste Fehler beim Kompilieren: "file not found" (bzw. seine deutsche Entsprechung). Mittels pin dateiname erfährst Du dann auch recht schnell, welches Paket fehlt. Oft ist es ein *-devel-Paket. Mal nachgucken... ./CD2/suse/i586/glibc-devel-2.3.2-87.i586.rpm: /usr/include/asm/<arch>/irq_vectors.h Allerdings stammt die Datei /usr/include/asm/irq.h, die darauf verweist , aus dem gleichen Paket, es müsste also installiert sein. Kommen wir zum zweiten beliebten Fehler beim Kompilieren: man sollte lesen, was da steht ;-) [...]
/usr/include/linux/version.h (ich formatiere die Meldungen mal etwas lesbarer) #error "To build kernel modules please do the following:" #error "" #error " o Have the kernel sources installed"
Paket kernel-source - ist das installiert?
#error " o Make sure that the symbolic link" #error " /lib/modules/`uname -r`/build exists and points to" #error " the matching kernel source directory"
Dieser Symlink müsste automatisch angelegt werden.
#error " o Configure kernel sources:" #error " - cd /usr/src/linux" #error " - make mrproper"
Anmerkung: Vorsicht, falls Du einen eigenen Kernel compiliert hast (was ich bei einem Newbie eher nicht vermute) - make mrproper löscht auch die .config! Falls Du am Kernel noch nichts gemacht hast, braucht Dich diese Anmerkung übrigens nicht zu stören.
#error " - make cloneconfig" #error " - make dep"
Die beiden Befehle müssen unbedingt sein. (der erste liest übrigens die Konfiguration des aktuellen Kernels aus /proc/config.gz und schreibt sie in die .config [1])
#error " o When compiling, make sure to use the following" #error " compiler option to use the correct include files:" #error "" #error " -I/lib/modules/`uname -r`/build/include" #error "" #error " instead of" #error "" #error " -I/usr/include/linux" #error "" #error " Please adjust the Makefile accordingly."
Das nur als Hinweis, falls es weitere Probleme geben sollte. Der Rest dürfte dann aus Folgefehlern resultieren. So, jetzt rufe aber bitte erstmal im Verzeichnis mit den ndiswrapper-Sourcen "make clean" auf, damit nicht irgendwelche störenden Überreste aus dem ersten Versuch übrigbleiben. Gruß Christian Boltz [1] funktioniert nur bei SuSE-Kerneln --
kennt jemand einen schönen WYSIWYG Editor für SuSE 9.0?? Klar, NEdit natürlich. Damit bekomme ich immer genau die Quelltexte, die ich vorher sehe. [> Stefan Eggert und Thorsten Haude in suse-linux]
participants (2)
-
Christian Boltz
-
Wolfgang Hoppe