• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

ndiswrapper

hallo,
bin linux neuling und muss mich notgedrungen (eine smc wlan karte soll installiert werden) mit ndiswrapper auseinandersetzen - eigentlich ist der installationsvorgang gut dokumentiert - beginnend mit make install passiert bei mir aber folgendes:
klaus@linux:~> cd /home/ndiswrapper-0.7/
klaus@linux:/home/ndiswrapper-0.7> make install
make -C driver install
make[1]: Entering directory `/home/ndiswrapper-0.7/driver'
cc -DDRV_VERSION=\"0.7\" -DLINUX -D__KERNEL__ -DMODULE -I/lib/modules/2.4.21-22
6-athlon/build/include -Wall -Wstrict-prototypes -fomit-frame-pointer -fno-stric
t-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' undeclar
ed here (not in a function)
/usr/include/linux/page-flags.h:119: error: requested alignment is not a constan
t
In file included from wrapper.c:27:
/usr/include/linux/netdevice.h:165: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclare
d 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 gefund
en
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 functio
n)
/usr/include/asm/hw_irq.h:31: error: `NR_IRQS' undeclared here (not in a functio
n)
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 her
e (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/{l
inux,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 fro
m 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 file
s - 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 exis
ts and points to"
/usr/include/linux/version.h:20:2: #error " the matching kernel source directo
ry"
/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 t
he 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/in
clude"
/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 accordi
ngly."
/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 previo
us 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 i s 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/ndiswrapper-0.7/driver'
make: *** [install] Fehler 2
klaus@linux:/home/ndiswrapper-0.7>


hat irgendwer da draussen eine ahnung was ich damit machen soll??? - verwend übrigens suse 9.0
danke
 

Bomber8475

Member
Code:
make install
^^ Das geht doch nur als root, oder net??

Die Installationsanleitung hast Du genau befolgt, oder? Gerade dies hier:

You need a recent kernel (at least 2.6.0 or 2.4.20) with source.
Kernelquellen installieren!!!

Hast Du schon mal die 0.8 Version bzw. die CVS Version ausprobiert. Bei meiner 9.0 funktioniert die 0.8 einwandfrei (Digitus 11mbit Karte mit Realtek 8081L Chipsatz). Bei einem Bekannten mit Suse 8.2 (oder sogar 7.3??) funktionierte sogar die CVS Version.
 
hab mich natürlich als root versucht - die 0.8 version von ndiswrapper spuckt die gleiche meldung aus ??? warum können die hersteller nicht einfach den passenden treiber mitliefern!!!!!
 

zero0109

Hacker
Bau dir mal aus den installierten Kernelquellen einen Kernel und versuchs dann noch mal damit. bei mir hat das jedenfalls, aus welchem Grund auch immer das Problem gelöst.
 

matsch

Newbie
Bin blutiger Linux-Anfänger und versuche meine Siemens PC Card 54 per WLAN zum laufen zu bringen. In einem anderen Forum habe ich gelesen, das jemand diese Karte zum laufen gebracht hat, aber auf meine Rückfragen habe ich leider noch keine Antwort bekommen.
Versuche hier mal mein Problem zu schildern.

Habe versucht ndiswrapper 0.6 per yast zu installieren - hat funktioniert und läuft. Die Wlankarte zeigt nun auch das Powerlämpchen an.
angeblich soll die Karte aber nur mit Version 0.8 laufen. Also habe ich mir die se Version von sourceforge geladen und im Ordner tmp entpackt. Beim Versuch mit make install das ganze zum laufen zu bringen bekomme ich immer wieder fogende Meldung:
Code:
laptop:/tmp/treiber/ndiswrapper-0.8 # make install
make -C driver install
make[1]: Entering directory `/tmp/treiber/ndiswrapper-0.8/driver'
make -C /lib/modules/2.6.4-52-default/build SUBDIRS=/tmp/treiber/ndiswrapper-0.8/driver DRV_VERSION=0.8 modules
make: *** /lib/modules/2.6.4-52-default/build: Datei oder Verzeichnis nicht gefunden.  Schluss.
make: Entering an unknown directorymake: Leaving an unknown directorymake[1]: *** [default] Fehler 2
make[1]: Leaving directory `/tmp/treiber/ndiswrapper-0.8/driver'
make: *** [install] Fehler 2
laptop:/tmp/treiber/ndiswrapper-0.8 #

Für das ganze bin ich als root angemeldet.

Wer kann mir hier helfen, was da schief läuft????

Vielen Dank schon mal im Vorraus.
 

matsch

Newbie
Ach ja, noch ein paar infos am Rande:
Suse 9.1

Und -- lesen kann ich auch, das es laut Rückmeldung das Verzeichniss "/built" nicht gibt. Ich finde zwar den Ordner, wo sich diese Verzeichniss befinden soll, aber da liegt nur eine Verknüpfung mit einem Schloss-Symbol und der Bezeichnung "Verknüpfung mir unbekannt"

Wie gesagt, freue mich auf jede Hilfe, die für mich als Anfänger auch nachvollziehbar ist.
Danke
 

matsch

Newbie
Ich schätze mal, das ich das noch machen muß. aber wie???
:?: :?: :?: :?:
Bin für jede einfache Anleitung zu haben.
 

Bomber8475

Member
Schau mal in den Ordner "la /usr/src". Sollte dann ähnlich dem hier aussehen (Ich hab den Suse90 default Kernel)
Code:
router:~ # la /usr/src/
total 24
drwxr-xr-x    6 root     root         4096 Jul  8 12:52 .
drwxr-xr-x   13 root     root         4096 Jul  8 14:42 ..
drwxr-xr-x    6 root     root         4096 Jul 19 19:24 kernel-modules
lrwxrwxrwx    1 root     root           15 Jul  8 12:38 linux -> linux-2.4.21-99
drwxr-xr-x   19 root     root         4096 Jul  8 12:39 linux-2.4.21-99
drwxr-xr-x    8 root     root         4096 Jul  8 12:38 linux-2.4.21-99-include
drwxr-xr-x    7 root     root         4096 Jul  8 12:31 packages
router:~ #

Wenn da nix ist: YAST starten, Software installieren o. löschen, dort nach "Kernel" suchen.. Dort gibts dann die "Kernel-Sourcen" zu finden.
Nicht wundern das die Sourcen jenseits 170MB benötigen.
 

matsch

Newbie
Hallo,
die Sources sind jetzt installiert und der ndiswrapper 08 hat bei make install auch keine Fehlermeldung mehr gebracht. Soweit sogut.

wenn ich nun dmesg ausführe erhalte ich noch die Meldung das die 06 Version installiert ist - ich habe allerdings vor der 08 installation das 06 Paket deinstalliert.
Als alter Windowsbenutzer bin ich der Meinung das das zum deinstalieren ausreicht. Scheint wohl nicht so zu sein.

Wie kann ich denn nun die 06er Version runterschmeißen???
Und muß ich bei make install mit der 08 Version ein Zielverzeichnis mit angeben, oder weiss Linux auswendig wohin???

Danke für die Hilfe
 

frockert

Newbie
Ähh,

wieso installierst du ndiswrapper nicht mittels yast und den SuSE cds?

gut, ist nur die 0.6-23, aber bei mir funzt des mit der Realtek 8180 problemlos.
 

matsch

Newbie
Ich versuche nur das umzusetzen, was ich so in den Foren alles aufgesammelt habe - so auch die info, das jemand die Karte zum laufen bekommen hat - aber erst mit der 0.8 Version.

Nachdem ich von den Tiefen in Linux noch recht wenig verstehe, muß ich halt immer wieder mal Fragen.

Optimale Lösung für mich wäre natürlich, wenn mir jemand eine Einfache und ausfürhliche Lösung liefern könnte wie ich meine Siemens PC Card 54 zum laufen bringe.

Dies scheint ja nicht soooo schwer oder unmöglich zu sein, da es doch schon einige hinbekommen haben.

Ob die Sache auch mit dem Ndiswrapper von der CD klappt habe ich noch nicht in Erfahrung bringen können.

Habe auf jeden Fall den Win-Treiber mit Ndiswrapper installiert, seitdem brennt auch das Powerlicht an der Karte - mehr aber noch nicht.

In Yast habe ich die Karte als Drahtlos konfiguriert, eine IP vergeben, die SSID angegeben und Betriebsmodus auf Verwaltet gestellt , da ich einen Router besitze, das als Acesspoint läuft.

Die Karte wird als eine Brodcom BCM 94306 erkannt - keine Ahnung ob das Passt.

Soweit der Stand der Dinge - ich freue mich auf eure Hilfe

Danke
 

matsch

Newbie
So, jetzt bin ich schon mal ein Stück weiter!!

Ich habe mit iwconfig wlan0 essid MEINACCESSPOINT den Namen festgelegt - und jetzt leuchtet zumindest schon mal ab und zu die Leuchte für den Datenverkehr.

Aber leider komme ich noch nicht auf meine Router.
Habe im Router keine Verschlüsselung eingestellt.
Habe in der conf-Datei des Treibers die SSID angepasst - da steht noch die Siemens -STandart drinnen - nützt aber auch nichts.

Kann mir noch jemand helfen???

Danke
 

frockert

Newbie
Hmm,

dasging bei mir relativ einfach.

Ich bin in yast --> Netzwerkgeräte rein, dort hatte er eh schon meine Wlan-Karte als nicht konfiguriert drinne stehen.

Diese Karte ignorieren und eine andere/neue konfigurieren, hier besteht nun die Möglichkeit "drahtlos" auszuwählen.
Als Treiber ndiswrapper auswählen, die anderen Fleder sind selbst erklärend.
Achja, bei mir funktioniert die Wlan-Karte nur, wenn die eth0 deaktiviert ist, ist ja auch logisch, 2 Karten im gleichen Subnet...
 

matsch

Newbie
Hallo und erst mal Danke für die Hinweise.

Jetzt mag meine Karte auch endlich :D

mein Problem bisher: :idea:

Ich habe bei der Konfiguration der Karte immer einen Haken bei PCMCIA gemacht - weil die Karte ja im selbigen Slott meines Notebooks steckt.
Die nun habe ich dieses Häkchen raus gemacht und mir den orinoce-cs-Treiber angeklickt (von Ndiswrapper ist leider weit und breit nichts zu sehen) und siehe da - jetzt geht alles so wie ich mir das vorgestellt habe.

Die Karte war vorher als Static-0 definiert und wlan0-Einstellungen waren nicht vorhanden.

Es Verabschiedet sich hier erst mal ein nun glücklicher Linux-Wlan-user

:D
 

matsch

Newbie
Oh Mann.....
...never touch a running System....

Bisher hat ja alles 1A bei mir gefunzt. Aber dann...
ich wollte eigentlich nur eine Verbindung über den Samb-client im Netzwerk herstellen. Kurzes Resumee: Samba-client installiert, Samba installiert, LISA installiert.
Nachdem das aber nix gebracht hat, habe ich die Teile wieder deinstalliert - alles über YAST.

Und nun...beim Booten findet mein Suse 9.1 die wlan0 Konfiguration nicht.
Ich muß jetzt jedes mal nach dem Start und Benutzerlogin mich als su anmelden und erst iwconfig wlan0 und dann ifup wlan0 eingeben.
Wie bekomme ich das hin, das das alles gleich beim Systemstart gemacht wird??

Vielen Dank für die Hilfe

matsch
 
Oben