# W-Lan Problem

## rhedoc

Hallo,

ich versuche seit einigen Tagen mein Wlan zum Laufen zu bekommen, was leider nicht so ganz funktioniert. 

Der Laptop ist ein IBM T60

lspci:

```
03:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG [Golan] Network Connection (rev 02)
```

Im dmesg taucht die Wlan-Karte nicht auf.

Ich bin dann der Anleitung über iwlwifi hier gefolgt:

http://en.gentoo-wiki.com/wiki/Iwlwifi

Ich benutze den Kernel 2.6.32-gentoo-r7 aus den gentoo-sources.

Nachdem ich alles wie beschrieben in der Kernelkonfiguration eingestellt hab bricht die Kernelkompilierung ab

```

lenny linux # make && make modules_install

scripts/kconfig/conf -s arch/x86/Kconfig

  CHK     include/linux/version.h

  CHK     include/linux/utsrelease.h

  SYMLINK include/asm -> include/asm-x86

  CALL    scripts/checksyscalls.sh

  CHK     include/linux/compile.h

  CC [M]  drivers/net/wireless/iwlwifi/iwl3945-base.o

drivers/net/wireless/iwlwifi/iwl3945-base.c:44:36: Fehler: net/ieee80211_radiotap.h: Datei oder Verzeichnis nicht gefunden

In Datei, eingefügt von drivers/net/wireless/iwlwifi/iwl3945-base.c:45:

include/net/lib80211.h:32:29: Fehler: linux/ieee80211.h: Datei oder Verzeichnis nicht gefunden

In file included from include/net/mac80211.h:22,

                 from drivers/net/wireless/iwlwifi/iwl3945-base.c:46:

include/net/cfg80211.h:174: Fehler: Feld »mcs« hat unvollständigen Typen

include/net/cfg80211.h:541: Fehler: »IEEE80211_MAX_SSID_LEN« ist hier nicht deklariert (nicht in einer Funktion)

include/net/cfg80211.h:1714: Warnung: »struct ieee80211_mgmt« innerhalb Parameterliste deklariert

include/net/cfg80211.h:1714: Warnung: sein Gültigkeitsbereich umfasst nur diese Definition bzw. Deklaration, was Sie wahrscheinlich nicht wollten

include/net/cfg80211.h: In Funktion »cfg80211_get_ibss«:

include/net/cfg80211.h:1735: Fehler: »WLAN_CAPABILITY_IBSS« nicht deklariert (erste Benutzung in dieser Funktion)

include/net/cfg80211.h:1735: Fehler: (Jeder nicht deklarierte Bezeichner wird nur einmal aufgeführt

include/net/cfg80211.h:1735: Fehler: für jede Funktion in der er auftritt.)

In file included from drivers/net/wireless/iwlwifi/iwl3945-base.c:46:

include/net/mac80211.h: Auf höchster Ebene:

include/net/mac80211.h:1764: Warnung: »struct ieee80211_rts« innerhalb Parameterliste deklariert

include/net/mac80211.h:1799: Warnung: »struct ieee80211_cts« innerhalb Parameterliste deklariert

include/net/mac80211.h:2041: Warnung: »enum ieee80211_back_parties« innerhalb Parameterliste deklariert

In file included from drivers/net/wireless/iwlwifi/iwl3945-base.c:54:

drivers/net/wireless/iwlwifi/iwl-commands.h:1464: Fehler: Feldtyp hat unvollständigen Elementtypen

drivers/net/wireless/iwlwifi/iwl-commands.h:1567: Fehler: Feldtyp hat unvollständigen Elementtypen

drivers/net/wireless/iwlwifi/iwl-commands.h:2745: Fehler: Feldtyp hat unvollständigen Elementtypen

drivers/net/wireless/iwlwifi/iwl-commands.h:2753: Fehler: Feldtyp hat unvollständigen Elementtypen

In file included from drivers/net/wireless/iwlwifi/iwl-3945.h:48,

                 from drivers/net/wireless/iwlwifi/iwl3945-base.c:56:

drivers/net/wireless/iwlwifi/iwl-dev.h:338: Fehler: Feld »frame« hat unvollständigen Typen

drivers/net/wireless/iwlwifi/iwl-dev.h:510: Fehler: Feld »mcs« hat unvollständigen Typen

In file included from drivers/net/wireless/iwlwifi/iwl3945-base.c:56:

drivers/net/wireless/iwlwifi/iwl-3945.h:121: Fehler: Feld »frame« hat unvollständigen Typen

In file included from drivers/net/wireless/iwlwifi/iwl3945-base.c:58:

drivers/net/wireless/iwlwifi/iwl-core.h: In Funktion »iwl_update_stats«:

drivers/net/wireless/iwlwifi/iwl-core.h:357: Fehler: Implizite Deklaration der Funktion »ieee80211_is_data«

drivers/net/wireless/iwlwifi/iwl-core.h: Auf höchster Ebene:

drivers/net/wireless/iwlwifi/iwl-core.h:463: Warnung: »struct ieee80211_mgmt« innerhalb Parameterliste deklariert

drivers/net/wireless/iwlwifi/iwl3945-base.c: In Funktion »iwl3945_build_tx_cmd_basic«:

drivers/net/wireless/iwlwifi/iwl3945-base.c:413: Fehler: Dereferenzierung eines Zeigers auf unvollständigen Typen

drivers/net/wireless/iwlwifi/iwl3945-base.c:419: Fehler: Implizite Deklaration der Funktion »ieee80211_is_mgmt«

drivers/net/wireless/iwlwifi/iwl3945-base.c:421: Fehler: Implizite Deklaration der Funktion »ieee80211_is_probe_resp«

drivers/net/wireless/iwlwifi/iwl3945-base.c:422: Fehler: Dereferenzierung eines Zeigers auf unvollständigen Typen

drivers/net/wireless/iwlwifi/iwl3945-base.c:430: Fehler: Implizite Deklaration der Funktion »ieee80211_has_morefrags«

drivers/net/wireless/iwlwifi/iwl3945-base.c:433: Fehler: Implizite Deklaration der Funktion »ieee80211_is_data_qos«

drivers/net/wireless/iwlwifi/iwl3945-base.c:434: Fehler: Implizite Deklaration der Funktion »ieee80211_get_qos_ctl«

drivers/net/wireless/iwlwifi/iwl3945-base.c:434: Warnung: Initialisierung erzeugt Zeiger von Ganzzahl ohne Typkonvertierung

drivers/net/wireless/iwlwifi/iwl3945-base.c:454: Fehler: Implizite Deklaration der Funktion »ieee80211_is_assoc_req«

drivers/net/wireless/iwlwifi/iwl3945-base.c:454: Fehler: Implizite Deklaration der Funktion »ieee80211_is_reassoc_req«

drivers/net/wireless/iwlwifi/iwl3945-base.c: In Funktion »iwl3945_tx_skb«:

drivers/net/wireless/iwlwifi/iwl3945-base.c:508: Fehler: Dereferenzierung eines Zeigers auf unvollständigen Typen

drivers/net/wireless/iwlwifi/iwl3945-base.c:511: Fehler: Dereferenzierung eines Zeigers auf unvollständigen Typen

drivers/net/wireless/iwlwifi/iwl3945-base.c:514: Fehler: Implizite Deklaration der Funktion »ieee80211_is_auth«

drivers/net/wireless/iwlwifi/iwl3945-base.c:541: Fehler: Dereferenzierung eines Zeigers auf unvollständigen Typen

drivers/net/wireless/iwlwifi/iwl3945-base.c:549: Warnung: Zuweisung erzeugt Zeiger von Ganzzahl ohne Typkonvertierung

drivers/net/wireless/iwlwifi/iwl3945-base.c:550: Fehler: »IEEE80211_QOS_CTL_TID_MASK« nicht deklariert (erste Benutzung in dieser Funktion)

drivers/net/wireless/iwlwifi/iwl3945-base.c:554: Fehler: »IEEE80211_SCTL_SEQ« nicht deklariert (erste Benutzung in dieser Funktion)

drivers/net/wireless/iwlwifi/iwl3945-base.c:555: Fehler: Dereferenzierung eines Zeigers auf unvollständigen Typen

drivers/net/wireless/iwlwifi/iwl3945-base.c:556: Fehler: Dereferenzierung eines Zeigers auf unvollständigen Typen

drivers/net/wireless/iwlwifi/iwl3945-base.c:557: Fehler: »IEEE80211_SCTL_FRAG« nicht deklariert (erste Benutzung in dieser Funktion)

drivers/net/wireless/iwlwifi/iwl3945-base.c:615: Fehler: Dereferenzierung eines Zeigers auf unvollständigen Typen

drivers/net/wireless/iwlwifi/iwl3945-base.c: In Funktion »iwl3945_bg_request_scan«:

drivers/net/wireless/iwlwifi/iwl3945-base.c:2871: Fehler: »WLAN_EID_SSID« nicht deklariert (erste Benutzung in dieser Funktion)

drivers/net/wireless/iwlwifi/iwl3945-base.c:2911: Warnung: Übergabe des Arguments 2 von »iwl_fill_probe_req« von inkompatiblem Zeigertyp

drivers/net/wireless/iwlwifi/iwl3945-base.c: In Funktion »iwl3945_post_associate«:

drivers/net/wireless/iwlwifi/iwl3945-base.c:3052: Fehler: »WLAN_CAPABILITY_SHORT_PREAMBLE« nicht deklariert (erste Benutzung in dieser Funktion)

drivers/net/wireless/iwlwifi/iwl3945-base.c:3058: Fehler: »WLAN_CAPABILITY_SHORT_SLOT_TIME« nicht deklariert (erste Benutzung in dieser Funktion)

drivers/net/wireless/iwlwifi/iwl3945-base.c: In Funktion »iwl3945_config_ap«:

drivers/net/wireless/iwlwifi/iwl3945-base.c:3243: Fehler: »WLAN_CAPABILITY_SHORT_PREAMBLE« nicht deklariert (erste Benutzung in dieser Funktion)

drivers/net/wireless/iwlwifi/iwl3945-base.c:3252: Fehler: »WLAN_CAPABILITY_SHORT_SLOT_TIME« nicht deklariert (erste Benutzung in dieser Funktion)

make[4]: *** [drivers/net/wireless/iwlwifi/iwl3945-base.o] Fehler 1

make[3]: *** [drivers/net/wireless/iwlwifi] Fehler 2

make[2]: *** [drivers/net/wireless] Fehler 2

make[1]: *** [drivers/net] Fehler 2

make: *** [drivers] Fehler 2

```

Der Versuch ipw3945 zu installieren endet folgendermaßen:

```

lenny ~ # emerge ipw3945

!!! CONFIG_PROTECT is empty

Calculating dependencies... done!

>>> Verifying ebuild manifests

>>> Emerging (1 of 1) net-wireless/ipw3945-1.2.2-r1

 * ipw3945-1.2.2.tgz RMD160 SHA1 SHA256 size ;-) ...                     [ ok ]

 * checking ebuild checksums ;-) ...                                     [ ok ]

 * checking auxfile checksums ;-) ...                                    [ ok ]

 * checking miscfile checksums ;-) ...                                   [ ok ]

 * CPV:  net-wireless/ipw3945-1.2.2-r1

 * REPO: gentoo

 * USE:  elibc_glibc kernel_linux userland_GNU x86

 * Determining the location of the kernel source code

 * Found kernel source directory:

 *     /usr/src/linux

 * Found kernel object directory:

 *     /lib/modules/2.6.32-gentoo-r7/build

 * Found sources for kernel version:

 *     2.6.32-gentoo-r7

 * Checking for suitable kernel configuration options...

 *   CONFIG_WIRELESS_EXT:    is not set when it should be.

 *   ipw3945-1.2.2 requires support for Generic IEEE 802.11 Networking Stack (CONFIG_IEEE80211).

 *   CONFIG_IEEE80211_CRYPT_CCMP:    is not set when it should be.

 *   CONFIG_IEEE80211_CRYPT_TKIP:    is not set when it should be.

 * Please check to make sure these options are set correctly.

 * Failure to do so may cause unexpected problems.

 * Once you have satisfied these options, please try merging

 * this package again.

 * ERROR: net-wireless/ipw3945-1.2.2-r1 failed:

 *   Incorrect kernel configuration options

 * 

 * Call stack:

 *                 ebuild.sh, line  54:  Called pkg_setup

 *   ipw3945-1.2.2-r1.ebuild, line  42:  Called linux-mod_pkg_setup

 *          linux-mod.eclass, line 585:  Called linux-info_pkg_setup

 *         linux-info.eclass, line 888:  Called check_extra_config

 *         linux-info.eclass, line 782:  Called die

 * The specific snippet of code:

 *         die "Incorrect kernel configuration options"

 * 

 * If you need support, post the output of 'emerge --info =net-wireless/ipw3945-1.2.2-r1',

 * the complete build log and the output of 'emerge -pqv =net-wireless/ipw3945-1.2.2-r1'.

 * The complete build log is located at '/var/tmp/portage/net-wireless/ipw3945-1.2.2-r1/temp/build.log'.

 * The ebuild environment file is located at '/var/tmp/portage/net-wireless/ipw3945-1.2.2-r1/temp/die.env'.

 * S: '/var/tmp/portage/net-wireless/ipw3945-1.2.2-r1/work/ipw3945-1.2.2'

>>> Failed to emerge net-wireless/ipw3945-1.2.2-r1, Log file:

>>>  '/var/tmp/portage/net-wireless/ipw3945-1.2.2-r1/temp/build.log'

 * Messages for package net-wireless/ipw3945-1.2.2-r1:

 *   CONFIG_WIRELESS_EXT:    is not set when it should be.

 *   ipw3945-1.2.2 requires support for Generic IEEE 802.11 Networking Stack (CONFIG_IEEE80211).

 *   CONFIG_IEEE80211_CRYPT_CCMP:    is not set when it should be.

 *   CONFIG_IEEE80211_CRYPT_TKIP:    is not set when it should be.

 * Please check to make sure these options are set correctly.

 * Failure to do so may cause unexpected problems.

 * Once you have satisfied these options, please try merging

 * this package again.

 * ERROR: net-wireless/ipw3945-1.2.2-r1 failed:

 *   Incorrect kernel configuration options

 * 

 * Call stack:

 *                 ebuild.sh, line  54:  Called pkg_setup

 *   ipw3945-1.2.2-r1.ebuild, line  42:  Called linux-mod_pkg_setup

 *          linux-mod.eclass, line 585:  Called linux-info_pkg_setup

 *         linux-info.eclass, line 888:  Called check_extra_config

 *         linux-info.eclass, line 782:  Called die

 * The specific snippet of code:

 *         die "Incorrect kernel configuration options"

 * 

 * If you need support, post the output of 'emerge --info =net-wireless/ipw3945-1.2.2-r1',

 * the complete build log and the output of 'emerge -pqv =net-wireless/ipw3945-1.2.2-r1'.

 * The complete build log is located at '/var/tmp/portage/net-wireless/ipw3945-1.2.2-r1/temp/build.log'.

 * The ebuild environment file is located at '/var/tmp/portage/net-wireless/ipw3945-1.2.2-r1/temp/die.env'.

 * S: '/var/tmp/portage/net-wireless/ipw3945-1.2.2-r1/work/ipw3945-1.2.2'

```

Für Hilfe bedanke ich mich im Voraus

Gruß

rhedoc

----------

## Schinkencroissant

Hallo,

mein WLAN tut zwar auch nicht immer, was es soll, kenne mich also auch wohl eher weniger aus, aber kann es vielleicht sein, ich meine, mich da an etwas erinnernzukönnen, dass Du noch einen Microcode installieren musst?

Da ich ein anderes WLAN-Gerät habe, kann ich aber nicht genau sagen, was für einer das sein müsste.

Mir hatte diese http://intellinuxwireless.org/ Seite relativ gut geholfen.

Viele Grüße,

Florian

----------

## rhedoc

Danke für den Link. Leider sagt die Seite eigentlich nur das alles benötigte im Kernel enthalten ist und hilft mir dadurch nicht wirklich weiter.

Trotzdem danke.

----------

## Christian99

 *Quote:*   

> drivers/net/wireless/iwlwifi/iwl3945-base.c:44:36: Fehler: net/ieee80211_radiotap.h: Datei oder Verzeichnis nicht gefunden 

 

Das sieht sehr nach einem fehler im kernelpackage aus. vorsichtshalber nochmal neu installieren, und dann nen bugreportschreiben.

würd ich sagen. kannst auch mal ne andere version installieren und schaun, ob du die datei da findest und dann kopieren. wenn du glück hast hat sich nix an der datei geändert und es funktioniert.

Schöne grüße

Christian

----------

## rhedoc

Problem gelöst, vielen Dank.

----------

## Evildad

Schön wäre noch, wenn Du schreiben würdest woran es schlussendlich gelegen hat.

Das hilft dann dem nächsten.

----------

