Commande make dans installation driver WiFi usb
ccmforum007
Messages postés
72
Statut
Membre
-
ccmforum007 Messages postés 72 Statut Membre -
ccmforum007 Messages postés 72 Statut Membre -
Bonjour,
Mon PC de bureau ne possède pas de Wifi, j'ai donc acheté une clé usb Wifi adaptater.
L'installation sous Windows OK car il suffisait de cliquer sur le fichier .exe et basta.
Sous Fedora 24 l'installation est tout autre, j'ai d'abord décompressé le fichier ffffffffff.tar.bz2, ensuite dedans il y a un fichier README que j'ai ouvert, et ci-dessous le contenu. Je suis bloqué au point 4> car en tapant la commande make comme il est indiqué, j'ai un message d'erreur me disant qu'il n'y a pas de cible, merci d'avance pour votre aide.
Build Instructions:
====================
1> $tar -xvzf DPB_RT2870_Linux_STA_x.x.x.x.tgz
go to "./DPB_RT2870_Linux_STA_x.x.x.x" directory.
2> In Makefile
set the "MODE = STA" in Makefile and chose the TARGET to Linux by set "TARGET = LINUX"
define the linux kernel source include file path LINUX_SRC
modify to meet your need.
3> In os/linux/config.mk
define the GCC and LD of the target machine
define the compiler flags CFLAGS
modify to meet your need.
*
Please set 'HAS_WPA_SUPPLICANT=y' and 'HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y'.
=> #>cd wpa_supplicant-x.x
=> #>./wpa_supplicant -Dwext -ira0 -c wpa_supplicant.conf -d
*
Please set 'HAS_WPA_SUPPLICANT=y' and 'HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=n'.
=> #>cd wpa_supplicant-0.5.7
=> #>./wpa_supplicant -Dralink -ira0 -c wpa_supplicant.conf -d
4> $make
# compile driver source code
# To fix "error: too few arguments to function ¡¥iwe_stream_add_event"
=> $patch -i os/linux/sta_ioctl.c.patch os/linux/sta_ioctl.c
5> $cp RT2870STA.dat /etc/Wireless/RT2870STA/RT2870STA.dat
6> load driver, go to "os/linux/" directory.
#[kernel 2.4]
# $/sbin/insmod rt2870sta.o
# $/sbin/ifconfig ra0 inet YOUR_IP up
#[kernel 2.6]
# $/sbin/insmod rt2870sta.ko
# $/sbin/ifconfig ra0 inet YOUR_IP up
7> unload driver
$/sbin/ifconfig ra0 down
$/sbin/rmmod rt2870sta
Mon PC de bureau ne possède pas de Wifi, j'ai donc acheté une clé usb Wifi adaptater.
L'installation sous Windows OK car il suffisait de cliquer sur le fichier .exe et basta.
Sous Fedora 24 l'installation est tout autre, j'ai d'abord décompressé le fichier ffffffffff.tar.bz2, ensuite dedans il y a un fichier README que j'ai ouvert, et ci-dessous le contenu. Je suis bloqué au point 4> car en tapant la commande make comme il est indiqué, j'ai un message d'erreur me disant qu'il n'y a pas de cible, merci d'avance pour votre aide.
Build Instructions:
====================
1> $tar -xvzf DPB_RT2870_Linux_STA_x.x.x.x.tgz
go to "./DPB_RT2870_Linux_STA_x.x.x.x" directory.
2> In Makefile
set the "MODE = STA" in Makefile and chose the TARGET to Linux by set "TARGET = LINUX"
define the linux kernel source include file path LINUX_SRC
modify to meet your need.
3> In os/linux/config.mk
define the GCC and LD of the target machine
define the compiler flags CFLAGS
modify to meet your need.
*
- Build for being controlled by NetworkManager or wpa_supplicant wext functions
Please set 'HAS_WPA_SUPPLICANT=y' and 'HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y'.
=> #>cd wpa_supplicant-x.x
=> #>./wpa_supplicant -Dwext -ira0 -c wpa_supplicant.conf -d
*
- Build for being controlled by WpaSupplicant with Ralink Driver
Please set 'HAS_WPA_SUPPLICANT=y' and 'HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=n'.
=> #>cd wpa_supplicant-0.5.7
=> #>./wpa_supplicant -Dralink -ira0 -c wpa_supplicant.conf -d
4> $make
# compile driver source code
# To fix "error: too few arguments to function ¡¥iwe_stream_add_event"
=> $patch -i os/linux/sta_ioctl.c.patch os/linux/sta_ioctl.c
5> $cp RT2870STA.dat /etc/Wireless/RT2870STA/RT2870STA.dat
6> load driver, go to "os/linux/" directory.
#[kernel 2.4]
# $/sbin/insmod rt2870sta.o
# $/sbin/ifconfig ra0 inet YOUR_IP up
#[kernel 2.6]
# $/sbin/insmod rt2870sta.ko
# $/sbin/ifconfig ra0 inet YOUR_IP up
7> unload driver
$/sbin/ifconfig ra0 down
$/sbin/rmmod rt2870sta
A voir également:
- Commande make dans installation driver WiFi usb
- Clé usb non détectée - Guide
- Invite de commande - Guide
- Hp usb disk storage format tool - Télécharger - Stockage
- Usb show - Télécharger - Sauvegarde
- Formater clé usb - Guide
3 réponses
Salut,
Pour compiler un programme il te faut tous les outils nécessaires (gcc, make, kernel-headers), donc à installer si non présents.
Par contre, quelle est la référence de ta clé WiFi ?
Pour compiler un programme il te faut tous les outils nécessaires (gcc, make, kernel-headers), donc à installer si non présents.
Par contre, quelle est la référence de ta clé WiFi ?
Quelle est la version de ton noyau?
Sur ma Debian Linux bata 4.6.0-1-amd64 #1 SMP Debian 4.6.3-1 (2016-07-04) x86_64 GNU/Linux
Fedora 24 semble fourni avec un noyau 4.5 (4.6 en upgrade): Fedora 24 Will Ship With Linux 4.5 Kernel, Linux 4.6 To Be Offered As Update , donc il faudra chercher la package contenant le firmware (ou convertir le package Debian ou autre avec alien,s'il échet.
Ce lien peut être utile: HOWTO: Native rt2860, rt2870 & rt3070 wireless drivers for Fedora
Don il semble inutile de recompiler le pilote du matériel
Ou bien nous ne parlons pas de la même famille de matériel.
Gates gave ^W sold you the windows.
GNU gave us the whole house.(Alexandrin)
Sur ma Debian Linux bata 4.6.0-1-amd64 #1 SMP Debian 4.6.3-1 (2016-07-04) x86_64 GNU/Linux
johand@bata:~$ /sbin/modinfo rt2800usb | grep 2870
firmware: rt2870.bin
alias: usb:v148Fp2870d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v8516p2870d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v07B8p2870d*dc*dsc*dp*ic*isc*ip*in*
johand@bata:~$ dpkg -S /lib/firmware/rt2870.bin
firmware-misc-nonfree: /lib/firmware/rt2870.bin
Fedora 24 semble fourni avec un noyau 4.5 (4.6 en upgrade): Fedora 24 Will Ship With Linux 4.5 Kernel, Linux 4.6 To Be Offered As Update , donc il faudra chercher la package contenant le firmware (ou convertir le package Debian ou autre avec alien,s'il échet.
Ce lien peut être utile: HOWTO: Native rt2860, rt2870 & rt3070 wireless drivers for Fedora
Don il semble inutile de recompiler le pilote du matériel
Ou bien nous ne parlons pas de la même famille de matériel.
Gates gave ^W sold you the windows.
GNU gave us the whole house.(Alexandrin)
Salut jsisv, merci pour ta réponse,
voici la version de mon noyau:
uname -r
4.6.4-301.fc24.x86_64
"...donc il faudra chercher la package contenant le firmware (ou convertir le package Debian ou autre avec alien,s'il échet."
Où et comment je fais pour trouver ce package ?
Désolé si ma question est débile, je ne maîtrise rien pour le moment :)
Merci d'avance
voici la version de mon noyau:
uname -r
4.6.4-301.fc24.x86_64
"...donc il faudra chercher la package contenant le firmware (ou convertir le package Debian ou autre avec alien,s'il échet."
Où et comment je fais pour trouver ce package ?
Désolé si ma question est débile, je ne maîtrise rien pour le moment :)
Merci d'avance
J'ai tapé la commande :
/sbin/modinfo rt2800usb | grep 2870
résultat :
firmware: rt2870.bin
alias: usb:v148Fp2870d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v8516p2870d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v07B8p2870d*dc*dsc*dp*ic*isc*ip*in*
commande :
dpkg -S /lib/firmware/rt2870.bin
résultat :
dpkg-query: aucun chemin ne correspond à /lib/firmware/rt2870.bin
/sbin/modinfo rt2800usb | grep 2870
résultat :
firmware: rt2870.bin
alias: usb:v148Fp2870d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v8516p2870d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v07B8p2870d*dc*dsc*dp*ic*isc*ip*in*
commande :
dpkg -S /lib/firmware/rt2870.bin
résultat :
dpkg-query: aucun chemin ne correspond à /lib/firmware/rt2870.bin
Après quelques recherches, je suis allé ici :https://www.rpmfind.net/linux/rpm2html/search.php?query=iwl7260-firmware
puis j'ai téléchargé le 3ème download qui semble correspondre à mon noyau.
ensuite j'ai tapé la commande :
rpm iwl7260-firmware-25.30.13.0-66.fc24.noarch.rpm
résultat :
RPM version 4.13.0-rc1
Copyright (C) 1998-2002 - Red Hat, Inc.
Ce programme peut être librement redistribué sous les termes de la licence GNU GPL
Utilisation: rpm [-afgpcdLlsiv?] [-a|--all] [-f|--file] [-g|--group]
[-p|--package] [--pkgid] [--hdrid] [--triggeredby] [--whatrequires]
[--whatprovides] [--whatrecommends] [--whatsuggests]
[--whatsupplements] [--whatenhances] [--nomanifest]
[-c|--configfiles] [-d|--docfiles] [-L|--licensefiles] [--dump]
[-l|--list] [--queryformat=QUERYFORMAT] [-s|--state]
[--nofiledigest] [--nofiles] [--nodeps] [--noscript] [--allfiles]
[--allmatches] [--badreloc] [-e|--erase=<package>+] [--excludedocs]
[--excludepath=<chemin>] [--force] [-F|--freshen=<packagefile> +]
[-h|--hash] [--ignorearch] [--ignoreos] [--ignoresize]
[-i|--install] [--justdb] [--nodeps] [--nofiledigest]
[--nocontexts] [--noorder] [--noscripts] [--notriggers]
[--oldpackage] [--percent] [--prefix=<rep>]
[--relocate=<vieux>=<nouveau>] [--replacefiles] [--replacepkgs]
[--test] [-U|--upgrade=<packagefile> +] [--reinstall=<packagefile> +]
[-D|--define='MACRO EXPR'] [--undefine=MACRO] [-E|--eval='EXPR']
[--macros=<FICHIER:...>] [--noplugins] [--nodigest] [--nosignature]
[--rcfile=<FICHIER:...>] [-r|--root=RACINE] [--dbpath=RÉPERTOIRE]
[--querytags] [--showrc] [--quiet] [-v|--verbose] [--version]
[-?|--help] [--usage] [--scripts] [--setperms] [--setugids]
[--conflicts] [--obsoletes] [--provides] [--requires]
[--recommends] [--suggests] [--supplements] [--enhances] [--info]
[--changelog] [--xml] [--triggers] [--filetriggers] [--last]
[--dupes] [--filesbypkg] [--fileclass] [--filecolor] [--fscontext]
[--fileprovide] [--filerequire] [--filecaps]
Qu'est-ce qui se passe ??
puis j'ai téléchargé le 3ème download qui semble correspondre à mon noyau.
ensuite j'ai tapé la commande :
rpm iwl7260-firmware-25.30.13.0-66.fc24.noarch.rpm
résultat :
RPM version 4.13.0-rc1
Copyright (C) 1998-2002 - Red Hat, Inc.
Ce programme peut être librement redistribué sous les termes de la licence GNU GPL
Utilisation: rpm [-afgpcdLlsiv?] [-a|--all] [-f|--file] [-g|--group]
[-p|--package] [--pkgid] [--hdrid] [--triggeredby] [--whatrequires]
[--whatprovides] [--whatrecommends] [--whatsuggests]
[--whatsupplements] [--whatenhances] [--nomanifest]
[-c|--configfiles] [-d|--docfiles] [-L|--licensefiles] [--dump]
[-l|--list] [--queryformat=QUERYFORMAT] [-s|--state]
[--nofiledigest] [--nofiles] [--nodeps] [--noscript] [--allfiles]
[--allmatches] [--badreloc] [-e|--erase=<package>+] [--excludedocs]
[--excludepath=<chemin>] [--force] [-F|--freshen=<packagefile> +]
[-h|--hash] [--ignorearch] [--ignoreos] [--ignoresize]
[-i|--install] [--justdb] [--nodeps] [--nofiledigest]
[--nocontexts] [--noorder] [--noscripts] [--notriggers]
[--oldpackage] [--percent] [--prefix=<rep>]
[--relocate=<vieux>=<nouveau>] [--replacefiles] [--replacepkgs]
[--test] [-U|--upgrade=<packagefile> +] [--reinstall=<packagefile> +]
[-D|--define='MACRO EXPR'] [--undefine=MACRO] [-E|--eval='EXPR']
[--macros=<FICHIER:...>] [--noplugins] [--nodigest] [--nosignature]
[--rcfile=<FICHIER:...>] [-r|--root=RACINE] [--dbpath=RÉPERTOIRE]
[--querytags] [--showrc] [--quiet] [-v|--verbose] [--version]
[-?|--help] [--usage] [--scripts] [--setperms] [--setugids]
[--conflicts] [--obsoletes] [--provides] [--requires]
[--recommends] [--suggests] [--supplements] [--enhances] [--info]
[--changelog] [--xml] [--triggers] [--filetriggers] [--last]
[--dupes] [--filesbypkg] [--fileclass] [--filecolor] [--fscontext]
[--fileprovide] [--filerequire] [--filecaps]
Qu'est-ce qui se passe ??
Salut,
man rpm :
man rpm :
Install and Upgrade Options
In these options, PACKAGE_FILE can be either rpm binary file or ASCII package manifest (see PACKAGE SELECTION OPTIONS), and may be specified as an ftp or http URL, in which case the package will be downloaded before being installed. See FTP/HTTP OPTIONS for information on rpm's internal ftp and http client support.
The general form of an rpm install command is
rpm {-i|--install} [install-options] PACKAGE_FILE ...
This installs a new package.
Après de fastidieuses recherches, je tombe sur cette partie du fichier README qui demande :
In Makefile
set the "MODE = STA" in Makefile and chose the TARGET to Linux by set "TARGET = LINUX"
define the linux kernel source include file path LINUX_SRC
modify to meet your need.
par contre je ne sais pas exactement ce qu'il faut faire car dans le fichier Makefile j'ai ceci :
ifeq ($(WIFI_MODE),)
RT28xx_MODE = STA
else
RT28xx_MODE = $(WIFI_MODE)
endif
ifeq ($(TARGET),)
TARGET = LINUX
endif
déjà ci-dessus je ne comprends pas car le README me demande de changer la partie MODE en "MODE = STA" alors que dans le Makefile la variable est "RT28xx_MODE = STA".
Ma question c'est : dois-je changer "RT28xx_MODE = STA" en "MODE = STA" ou c'est la variable "WIFI_MODE" qu je dois changer ?
Ensuite toujours en suivant la suite du README, on me demande de définir le path de la variable LINUX_SRC : en effet un peu plus bàs du fichier Makefile c'est marqué :
ifeq ($(PLATFORM),PC)
# Linux 2.6
LINUX_SRC = /lib/modules/$(shell uname -r)/build
# Linux 2.4 Change to your local setting
#LINUX_SRC = /usr/src/linux-2.4
LINUX_SRC_MODULE = /lib/modules/$(shell uname -r)/kernel/drivers/net/wireless/
CROSS_COMPILE =
endif
Qu'est-ce que je dois affecter à la variable CROSS_COMPILE ?
Je sais que c'est un peu bordélique mais je n'arrive pas à faire ce que demande le fichier README
In Makefile
set the "MODE = STA" in Makefile and chose the TARGET to Linux by set "TARGET = LINUX"
define the linux kernel source include file path LINUX_SRC
modify to meet your need.
par contre je ne sais pas exactement ce qu'il faut faire car dans le fichier Makefile j'ai ceci :
ifeq ($(WIFI_MODE),)
RT28xx_MODE = STA
else
RT28xx_MODE = $(WIFI_MODE)
endif
ifeq ($(TARGET),)
TARGET = LINUX
endif
déjà ci-dessus je ne comprends pas car le README me demande de changer la partie MODE en "MODE = STA" alors que dans le Makefile la variable est "RT28xx_MODE = STA".
Ma question c'est : dois-je changer "RT28xx_MODE = STA" en "MODE = STA" ou c'est la variable "WIFI_MODE" qu je dois changer ?
Ensuite toujours en suivant la suite du README, on me demande de définir le path de la variable LINUX_SRC : en effet un peu plus bàs du fichier Makefile c'est marqué :
ifeq ($(PLATFORM),PC)
# Linux 2.6
LINUX_SRC = /lib/modules/$(shell uname -r)/build
# Linux 2.4 Change to your local setting
#LINUX_SRC = /usr/src/linux-2.4
LINUX_SRC_MODULE = /lib/modules/$(shell uname -r)/kernel/drivers/net/wireless/
CROSS_COMPILE =
endif
Qu'est-ce que je dois affecter à la variable CROSS_COMPILE ?
Je sais que c'est un peu bordélique mais je n'arrive pas à faire ce que demande le fichier README
je suis novice, j'apprends petit à petit les modes d'installation sous fedora.
La clé usb Wifi c'est le AC 600 Dual Band Wi-Fi Adapter de chez eSYNIC.
Il est livré avec un CD d'installation. Pour Windows pas de problème, je l'ai installé sans difficulté.
Le contenu du CD sont les dossiers : WINDOWS, Linux, Mac.
Dans Windows il y a le fichier ffff.exe (que j'ai double-cliqué pour l'installation sous windows et c'est tout).
Dans Mac ( ne m'intéresse pas car je n'ai pas de Mac)
Dans Linux il y a le fichier fffff.tar.bz2 (que j'ai décompréssé)
Une fois décompréssé, il y a le fichier README que je suis en train de suivre à la lettre et c'est sur le point 4 que je suis bloqué.
Pour cela il te faut installer certains paquets et les sources du noyau.
Je ne connais pas trop l'environnement Fedora, mais il semblerait que ces outils s'installent avec ces commandes (en root) :
J'ai effectué les deuxcommandes ci-dessus et tout s'est bien passé.
Sur le cd d'installation du driver, voice le contenu du dossier que j'ai décompréssé :
config.mk
cp_module.sh
cp_util.sh
DPA.IAB
DPA.IAD
DPA.IMBDPA.IMD
DPA.PFI
DPA.PO
DPA.PR
DPA.PRI
DPA.PS
DPA.SearchResults
DPA.WK3
load.sh
Makefile
Makefile.cleanMakefile.inc
MODULE
NETIF
unload.sh
'Untitled Project.IAB'
'Untitled Project.IAD'
'Untitled Project.IMB'
'Untitled Project.IMD'
'Untitled Project.PFI'
'Untitled Project.PO'
'Untitled Project.PR'
'Untitled Project.PRI'
'Untitled Project.PS'
'Untitled Project.SearchResults'
'Untitled Project.WK3'
UTIL
Il n'y a pas le fichier README du coup je n'ai aucune indication sur le comment faire, j'ai remarqué qu'il y a deux fichier .sh, j'aurai besoin de directive si c'est possible ?
Normalement si tu suis ce cheminement (ci-dessous, ce qui est en gras), ça devrait le faire.
sudo dnf install git kernel-headers ?
Merci à toi