[Resolu] Installation driver pour adaptateur 802.11 b/g WLAN

Bonjour à tous,
Pas sur que le driver que je vise soit un cas d’école, mais c’est le mien :
Le zd1211.

[quote=“MattOTop”]Bon je suis allé essayer de deviner quel stick c’etait, et je crois que ca se trouve là:
zd1211.ath.cx/
le module correspondant n’est pas intègré au noyau, donc il faut le compiler avec le module-assistant, si tu connais: aptitude install module-assistant m-a update m-a prepare m-a a-i zd1211-source
Ca devrait te compiler et t’installer le module de ta carte
MAIS il existait un bug, avec le 2.6.12 et hotplug, donc si tu ne retrouves pas zd1211 dans lsmod en ce qui te concerne, il y a l’explication ici avec un script à installer:
pronux.org/wakka.php?wiki=AsusZ81
Bon, pour la suite, j’espere que quelqu’un va prendre la relève.[/quote]
Voui MattOtop j’espère aussi, mais malheureusement j’ai pas encore su passer à la suite lol … Au secours !
Donc on est en présence de deux méthodes d’installations du driver, celle que tu cites, qui marche certainement mais qui m’a fait commettre la boulette lol …

car le zd1211-source, je l’ai trouvé ici :
packages.debian.org/cgi-bin/sear … 211-source
où on lit qu’il existe en unstable, et en testing … mais je suis en sarge, qu’à cela ne tienne… Ce qui me laisse plus perplexe, c’est que dans la rubrique aussi bien unstable que testing, on peut lire tout ça :

[quote]
Hardware supported includes:

Vendor/Name USB id
3COM 3CRUSB10075 6891:a727
AOpen 802.11g WL54 07b8:6001
iNexQ UR055g 1435:0711
Sitecom WL-113 0df6:9071
Telegent TG54USB 129b:1666
TwinMOS G240 126F:a006
Yakumo QuickWLAN 0b3b:1630
Airlink+ AWLL3025 0ace:1211
Zyxel ZyAIR G-220 0586:3401
X-Micro XWL-11GUZX 0ace:1211
Edimax EW-7317UG 0ace:1211
Safecom SWLU-5400 07b8:6001
Longshine LCS-8131G 07b8:6001
Planet WL-U356 0ace:1211
Sweex wireless 54MB 5173:1809
Acer WLAN-G-US1 0ace:1211
Trendnet TEW-424UB 0ace:1211
DrayTek Vigor 550 0675:0550
Asus WL-159g 0b05:170c
Trust NW-3100[/quote]
mais pas le mien qui est Sagem XG760A zd1211 079b:004a

J’ai tenté quand même, d’autant que l’autre méthode me posait un probleme aussi, et tu avais raison, un lsmod donne rien sur zd1211, mais le script que tu penses, sur qu’il est adapté ?
Je suis passé allègrement d’une méthode à une autre car pendant un bon moment rien de fonctionnait, sauf les messages d’erreurs …
L’autre méthode :

Marche pas bien non plus, les fichiers désarchivés générant des erreurs, style “caractère inconnu “,” Attention erreur” … et refus d’installation …

Bon je vais revoir un peu le script auquel tu faisais allusion … mais je suis PAUME, vu que en plus je suis plus en sarge mais en testing/unstable …
En esperant vous lire trés vite, merci . :confused:

bon, petit point sur les modules.
Ils sont rangés dans /lib/modules//…
Les deux methodes ont pour but de compiler et installer dans ce répertoire le fichier zd1211.ko.
Pour verifier, déjà, aprés mise en oeuvre d’une des deux méthodes, que tout s’est bien passé, tu fais “modinfo zd1211”, et si ca répond pas une erreur, c’est que le driver (module, pardon) est bien au bon endroit.
Ensuite, il faut savoir s’il n’est pas bugué et s’ils s’intègre bien au noyau.
Si un ‘modprobe zd1211’ ne te dis rien, et que tu retrouves zd1211 dans lsmod, c’est tout bon, tu peux passer à la config.

Je vais reregarder ce que fait le script, mais à priori, il s’assure juste que le module est chargé automatiquement (sinon, pour utiliser la carte, il faut faire le modprobe zd1211 à chaque fois que tu veux activer le wifi).
PS: si tu as accés aux sources testing/unstable, tu peux peut être installé le module assistant de la testing.
Tu cherches les differentes versions avec apt-cache policy, puis tu installes la version testing. chez moi ça donne:

emeraude:/boot/grub$ apt-cache policy module-assistant module-assistant: Installé : 0.10.3 Candidat : 0.10.3 Table de version : *** 0.10.3 0 998 http://ftp2.fr.debian.org etch/main Packages 987 http://ftp2.fr.debian.org sid/main Packages 100 /var/lib/dpkg/status 0.9sarge1 0 988 http://ftp2.fr.debian.org sarge/main Packages 990 http://security.debian.org sarge/updates/main Packages emeraude:/boot/grub$ sudo aptitude install module-assistant=0.10.3 (...)

bon, voillà le contenu du script:#Petit script qui permet de désactiver l'interface reseau tout en activant le sans fil #à la place du 192.168.0.186, vous devez mettre l'adresse de votre passerelle #pronux.org #!/bin/bash echo 'Debut' ifconfig eth0 down && modprobe zd1211 && ifconfig wlan0 up && pump -i wlan0 && route del default && route add default gw 192.168.0.186 echo 'Fin'
Ce script court circuite le fonctionnement automatique utilisant /etc/network/interfaces, donc pour faire du propre, tu va t’en passer.
Que donne le modprobe ?

OK, je reprends tout ça à la lumière de ces deux posts, pour info:

modinfo zd1211 modinfo: could not find module zd1211.ko
C’est bien ce que je pensais, il semblerait que le module zd1211.ko ne se trouve pas dans l’archive zd1211-driver-r74.tgz …
Est ce que je devais télécharger tout le répertoire accessible dans zd1211.ath.cx/download/ ou seulement le fichier le plus récent comme je pensais, ce que j’ai fait du reste (je vais voir ça) ?

Je trouve par contre des fichiers zd1211.c et zd1211.h dans /etc/src/modules/sd1211/src/ /home/jcode/zd1211-driver-r74/src/ # ça c'est normal /home/jcode/kernel/linux-2.6.16.5-usinagaz/drivers/net/zd1211-driver-rj74
Résultat de mes multiples bidouillages je suppose.
J’ai dans l’idée de supprimer tout les fichiers zd1211* pour recommencer au propre …
A voir.

[code]apt-cache policy module-assistant
… tout pareil que MattOTop, sauf que je découvre avec stupéfaction
que j’ai la même priorité pour etch et sarge …

" de plus, cette ligne qui revient souvent ces temps-ci

W: Aucune priorité (ou zéro) n’a été spécifiée pour l’étiquette …
Quelle étiquette ? oups. vais revoir mes préférences moi …[/code]

oublies la méthode en tgz, elle n’est pas pour debian.
Peux tu donner ton sources.list, et ton preferences ?

Bon, je dois avouer que c’est plus des brouillons que des fichiers … enfin je les montre tels qu’ils étaient au moment où … je … suis désolé …

[code]#deb file:///cdrom/ sarge main

################### Sources Sarges classiques

deb http://ftp.fr.debian.org/debian sarge main contrib non-free
deb-src http://ftp.fr.debian.org/debian sarge main contrib non-free

################### Source securité

deb http://security.debian.org/ sarge/updates main contrib non-free
deb-src http://security.debian.org/ sarge/updates main contrib non-free

################### Sources unofficial

deb http://ftp.debian-unofficial.org/debian/ sarge main contrib non-free restricted
deb-src http://ftp.debian-unofficial.org/debian/ sarge main contrib non-free restricted

#### dotdeb

deb http://packages.dotdeb.org/ sarge all
deb-src http://packages.dotdeb.org/ sarge all

################### Sources marillat

deb ftp://ftp.nerim.net/debian-marillat/ sarge main

################### Source Etch

deb http://ftp.fr.debian.org/debian etch main contrib non-free
deb-src http://ftp.fr.debian.org/debian etch main contrib non-free

Explanation : fichier préférences d’apt-get
Package: *
Pin: release a=sarge
Pin-Priority: 990

Package: *
Pin: release a=dotdeb
Pin-Priority: 980

Package: zd1211-source
Pin: release a=etch
Pin-Priority : 500
[/code]
… je me tais …

Changes le zd1211-source en 970, ajoutes Package: * Pin: release a=etch Pin-Priority : -1
fais un update, puis un dist-upgrade -s, ca devrait te dire ce qu’il va faire pour désinstaller les paquets etch. ensuites tu execute réellement le dist-upgradeou tu passes par dselect. Ca devrait le faire.

Sinon, tu inverses les priorités de l’etch et de la sarge, et tu homogènéise en etch.

Bon, quoi qu’il en soit, tu t’assures d’avoir le m-a de etch, puis tu fais le fameux ‘ma- a-i zd1211-source’, et une fois que c’est fait ‘modinfo zd1211’ pour voir si le module existe.

ok je vais faire ça, mais je me permet de rappeller qu’il n’est pas sûr que le pkg zd1211-source fonctionne pour mon adaptateur sagem … puisqu’il est dit : [quote]Hardware supported includes:
Vendor/Name USB id
3COM 3CRUSB10075 6891:a727

et plein d’autres, sauf :
079b:004a [/quote]
Bon je fais ça, mais j’aimerai ne pas homogénéisé en etch, je préfèrerai vraiment me faire la main avec sarge, bien qu’on dise que etch est quasi stable …
Merci beaucoup MattOTop, et le contenu du script super ! on sait que l’interface à déclarer c’est bien wlan0 en plus, si je ne m’abuse.

bon …
ben Il m’a rien demandé quand j’ai lancé, aprés update, apt-get dist-upgrade -s
ça m’a surpris, je l’ai refait en envoyant la sortie dans un fichier:

hors sujet [edité]

C’est bizarre tout semble en testing alors que j’ai bien rajouté comme tu m’as dit … je suppose que “Pin-Priority : -1” peut s’écrire sans espace entre le y et le :, comme ceci : “Pin-Priority: -1”?

vi. Pour ton sagem, si tu regardes sur le site officiel que je t’ai indiqué (sur sourceforge, me semble t il), tu va trouver le 079b:004a (c’est ce qui m’y a ramené, d’ailleurs).
Donc à moins que la version debian des sources soit amputée…
Et oui, ça devrait être wlan0.

tu as raison, il te propose de tout passer en etch, et tu as raison de te poser la question pour l’espace. essayes sans.

oui, en fait sourceforge nous aiguille sur zd1211.ath.cx/
oui, j’avais corrigé, j’ai pas testé avec l’espace en fait …
mais il me propose rien, il fait tout seul, c’est ça qui m’étonne, enfin, façon de parler :confused:
Merci pour tout, j’espère que j’avancerai un peu demain … Bon WE.

avec apt-get, tu n’as pas le choix.
C’est avec aptitude.

Bon, je recommence …

1/ apt-get install zd1211-source OK
Oui, car je l’avais désinstallé purger … MattOTop, je me permet de rappeller que mon adaptateur sagem n’est pas inclu dans la rubrique hardware supported de zd1211-source …
2/apt-get install zd1211-firmware puisqu’il est donné en paquet recommandé.OK
3/apt-get install zd1211-module puisqu’il est donné en paquet recommandé. PAS OK

Je passe sur cette recommandation, mais peut-être faudra t’il essayer de modifier la source pour le trouver si nécessaire au fonctionnement.

m-a updateOK : données de 73 pkg mises à jour

m-a prepareOK : Création du lien symbolique etc …

[quote]la construction du paquet zd1211-source à échoué.Que souhaitez vous faire ?
1/ View : ça m’affiche : des tas d’erreurs dans les fonctions du fichier zd1205.c telles que “CalculateQuality” ou encore “zd1205_translate_scan” = "noms de fonctions … "
ça finit par :
make[3] *** [/usr/usinagaz/modules/zd1211/src/zd1205.o] Erreur 1
make[2] *** [module/usr/src/modules/zd1211] Erreur 2
make[2] quittant le répertoire " /home/usinagaz/kernel/linux-2.6.16.5 "
make[1] *** [binary-modules] Erreur 2
make[1] quittant le répertoire " /usr/src/modules/zd1211 "
make: *** [kdist_build] Erreur 2
[/quote]
Aprés l’option View, on peut aussi choisir CONTINUE, “passer et continuer avec l’opération suivante”, et “stop : arrêt du traitement des commandes de constructions”, je pense avoir déjà essayé “continue”, ça ne marche pas … je stop, et je marque une pause lol …

as tu essayé de le faire avec sudo:
sudo m-a a-i zd1211-source
(ou en passant root, ce qui est à éviter, mais bon)

oui bien sur, j’étais en root du reste … (je sais, pas bonne habitude :confused: )
Justement, j’ai rappatrié un des dernier fichier de log de l’assistant :

dh_clean make clean make[1]: entrant dans le répertoire « /usr/src/modules/zd1211 » rm -rf .tmp_versions .*.cmd *.ko *.mod.c *.mod.o *.o src/*.o src/.*.o.cmd make[1]: quittant le répertoire « /usr/src/modules/zd1211 » /usr/bin/make V=0 -C /lib/modules/2.6.16.5-usinagaz/source SUBDIRS=/usr/src/modules/zd1211 clean make[1]: entrant dans le répertoire « /home/jcode/kernel/linux-2.6.16.5 » make[1]: quittant le répertoire « /home/jcode/kernel/linux-2.6.16.5 » /usr/bin/make -f debian/rules kdist_clean kdist_config binary-modules make[1]: entrant dans le répertoire « /usr/src/modules/zd1211 » dh_clean make clean make[2]: entrant dans le répertoire « /usr/src/modules/zd1211 » rm -rf .tmp_versions .*.cmd *.ko *.mod.c *.mod.o *.o src/*.o src/.*.o.cmd make[2]: quittant le répertoire « /usr/src/modules/zd1211 » /usr/bin/make V=0 -C /lib/modules/2.6.16.5-usinagaz/source SUBDIRS=/usr/src/modules/zd1211 clean make[2]: entrant dans le répertoire « /home/jcode/kernel/linux-2.6.16.5 » make[2]: quittant le répertoire « /home/jcode/kernel/linux-2.6.16.5 » /usr/bin/gcc-3.3 for templ in /usr/src/modules/zd1211/debian/zd1211-module-_KVERS_.postinst /usr/src/modules/zd1211/debian/zd1211-module-_KVERS_.postinst.backup /usr/src/modules/zd1211/debian/zd1211-module-_KVERS_.postinst.modules.in; do \ cp $templ `echo $templ | sed -e 's/_KVERS_/2.6.16.5-usinagaz/g'` ; \ done for templ in `ls debian/*.modules.in` ; do \ test -e ${templ%.modules.in}.backup || cp ${templ%.modules.in} ${templ%.modules.in}.backup 2>/dev/null || true; \ sed -e 's/##KVERS##/2.6.16.5-usinagaz/g ;s/#KVERS#/2.6.16.5-usinagaz/g ; s/_KVERS_/2.6.16.5-usinagaz/g ; s/##KDREV##/2/g ; s/#KDREV#/2/g ; s/_KDREV_/2/g' < $templ > ${templ%.modules.in}; \ done dh_testdir dh_testroot dh_clean -k /usr/bin/make V=0 -C /lib/modules/2.6.16.5-usinagaz/source SUBDIRS=/usr/src/modules/zd1211 ZD1211REV_B=0 modules make[2]: entrant dans le répertoire « /home/jcode/kernel/linux-2.6.16.5 » CC [M] /usr/src/modules/zd1211/src/zd1205.o /usr/src/modules/zd1211/src/zd1205.c:734: attention : `zd_readl' declared inline after being called /usr/src/modules/zd1211/src/zd1205.c: Dans la fonction « zd1205_validate_frame »: /usr/src/modules/zd1211/src/zd1205.c:2806: attention : unused variable `len1' /usr/src/modules/zd1211/src/zd1205.c: Dans la fonction « zd1205wext_iw_get_stats »: /usr/src/modules/zd1211/src/zd1205.c:4773: error: structure has no member named `iw_stats' /usr/src/modules/zd1211/src/zd1205.c: Dans la fonction « zd1205_translate_scan »: /usr/src/modules/zd1211/src/zd1205.c:7176: attention : format int, arg U32 (arg 4) /usr/src/modules/zd1211/src/zd1205.c:7176: attention : type de caractère de conversion inconnu « , » dans le format /usr/src/modules/zd1211/src/zd1205.c:7176: attention : des caractères « % » douteux traînent dans le format /usr/src/modules/zd1211/src/zd1205.c: Dans la fonction « zd1205_list_bss »: /usr/src/modules/zd1211/src/zd1205.c:7381: attention : format int, arg U32 (arg 2) /usr/src/modules/zd1211/src/zd1205.c:7381: attention : des caractères « % » douteux traînent dans le format /usr/src/modules/zd1211/src/zd1205.c: Dans la fonction « CalculateQuality »: /usr/src/modules/zd1211/src/zd1205.c:10046: attention : unused variable `rxOffset' make[3]: *** [/usr/src/modules/zd1211/src/zd1205.o] Erreur 1 make[2]: *** [_module_/usr/src/modules/zd1211] Erreur 2 make[2]: quittant le répertoire « /home/jcode/kernel/linux-2.6.16.5 » make[1]: *** [binary-modules] Erreur 2 make[1]: quittant le répertoire « /usr/src/modules/zd1211 » make: *** [kdist_build] Erreur 2
Qu’en penses tu ?
Pour info, ce probleme est relaté …ICI et il y a un lien vers la solution en fin de post, la méthode avec ndiswrapper à l’air d’avoir fait ses preuves, mais je n’arrive pas à installer ndiswrapper, c’est pénible … enfin, je confirme que j’ai mis ça en stand by pour continuer avec module-assistant

je crois juste que c’est dans la manière dont tu as rangé et compilé ton noyau.
Par ailleurs, il y a toutes les chances que ce soit le même problême qui t’empêche de compiler ndiswrapper si c’est ça qui te bloque, ou tout autre module que tu voudrais construire avec les sources, donc ça vaut le coup de résoudre le pb, non ?

1/Tu es bien en 2.6.16.5-usinagaz ?
2/Tu as compilé dans ce noyau avec ‘make-kpkg’ ?
3/dans /home/jcode/kernel/linux-2.6.16.5 ?
4/Tu as bien /usr/src/linux qui pointe vers ce répertoire ?
5/Qu’est ce que ce répertoire /usr/usinagaz/modules/zd1211/src/ qui est cité dans ton précèdent message d’erreur ?

Le ndiswrapper a peut être effectivement fait ses preuves, mais avec les nouveaux noyaux etch et sid, le module natif existe (je suis sûr d’avoir vu ta carte sur le site du module, et à priori, c’est un module générique pour les sticks/dongle wifi). Celà évite de faire tourner un “miniemulateur” windows (ce qu’est ndiswrapper) pour y faire tourner le pilote windows de ta carte.
Tu vois pourquoi il vaut mieux se passer d’ndiswrapper si tu peux ?

OK MattOTop, je crois que tu as mis le doigt sur le probleme réel, et j’avoue que je redoutais un peu que ce soit ça :

[quote=“MattOTop”]je crois juste que c’est dans la manière dont tu as rangé et compilé ton noyau.
Par ailleurs, il y a toutes les chances que ce soit le même problême qui t’empêche de compiler ndiswrapper si c’est ça qui te bloque, ou tout autre module que tu voudrais construire avec les sources, donc ça vaut le coup de résoudre le pb, non ?

1/Tu es bien en 2.6.16.5-usinagaz ?
2/Tu as compilé dans ce noyau avec ‘make-kpkg’ ?
3/dans /home/jcode/kernel/linux-2.6.16.5 ?
4/Tu as bien /usr/src/linux qui pointe vers ce répertoire ?
5/Qu’est ce que ce répertoire /usr/usinagaz/modules/zd1211/src/ qui est cité dans ton précèdent message d’erreur ?
[/quote]
Je voudrais bien mettre de l’ordre dans tout ça en effet, alors :
1/ j’ai bien booté sur 2.6.16.5-usinagaz oui
2/oui j’ai utilisé make-kpkg mais j’ai du mal à comprendre d’où lancer certaine commande, où me placer je veux dire …
3/ ben je sais pas j’ai du mal à dire dans quoi en fait ou à spécifier où il faut le faire, je crois me souvenir que j’ai lancé la commade make-kpkg à partir du repertoir utilisateur oui
4/ /usr/src/linux ne pointe pas, c’est un repertoire avec kernel lib stamp-build, etc …de même que /home/jcode/kernel/linux … même contenu à priori …
5/ non c’est moi qui ai changé le nom utilisateur il faut lire /usr/jcode/modules/zd1211/src

Je pense que mon install n’est pas propre, c’est le moins qu’on puisse dire…

OK: ne cherches pas, deplaces ton repertoire /usr/src/linux, ou supprimes le si tu sais qu’il ne sert pas, et remplace le par un lien vers ta VRAIE arborescence de noyau, celle ou tu as compilé ton noyau courant:

[code]# mv /usr/src/linux /usr/src/linux.bak

ln -s /home/jcode/kernel/linux-2.6.16.5 /usr/src/linux[/code]

ensuites tu relances le m-a, et ça devrait marcher.

Super … :stuck_out_tongue:
mais minute, comment je sais lequel ne sert pas :confused: ?
1/ il y a un test trés simple pour savoir ? est ce que je n’ai pas des fichiers qui se servent de l’un et d’autres qui se servent de l’autre ?
2/ comment donc effacer déjà un repertoire entier, ex : /usr/src/linux et son contenu, sans que ça remonte dans l’arbre pour effacer src lol (j’ai vu un post comme ça ya pas si longtemps)
3/ est ce que ça n’a pas d’inportance que le noyau soit dans home ? moi j’aurais plutôt pensé que le rep /home/jcode/linux n’était pas le bon mais un de mes bidouillages … comment savoir … j’ai vu, dans un fichier Makefile je sais plus où maintenant, qu’une ligne KERNEL="/usr/src/linux"
était commentée et suivie de KERNEL=($SHELL’uname -r’) quelquechose comme ça …
Bon je pense qu’on touche au but néanmoins … courage. :stuck_out_tongue: