Installer driver propriétaire ralink sur ubun

Résolu
Bonjour,

Je viens d'installer ubutnu 8.04 beta sur mon nouveau desktop, et contrairement a ce que j'espérai ma carte wifi n'est pas directement reconnue.

Il s'agit du chipset Ralink RT2870, et ralink propose un driver sur son site. très bien! sauf que je ne suis pas assez douer pour comprendre leur mode d'emplois.

D'ou question, quelqu'un connait-il un bon tuto que je n'aurai pas trouvé? Ou alors un(e) surdoué(e) peut-il m'aider, genre jipicy, mamiemando, kilian, lami20j, jeanbi ou autre?

là j'en suis à "In Makefile, set the MODE = STA", ok, "TARGET = Linux", ok aussi, mais ou je cale, c'est "define the linux kernel source include file path LINUX_SRC modify to meet your need" Il y a un peu trop de LINUX_SRC pour que je sache quel chemin mettre pour quoi.

extrait du makefile à modifier :

ifeq ($(PLATFORM),5VT)
LINUX_SRC = /opt/fvt_11N_SDK_0807/fvt131x_SDK_11n/linux-2.6.17
CROSS_COMPILE = /opt/crosstool/uClibc_v5te_le_gcc_4_1_1/bin/arm-linux-
endif

ifeq ($(PLATFORM),IKANOS)
LINUX_SRC = /home/sample/projects/LX_2618_RG_5_3_00r4_SRC/linux-2.6.18
CROSS_COMPILE = mips-linux-
endif

ifeq ($(PLATFORM),SIGMA)
LINUX_SRC = /root/sigma/smp86xx_kernel_source_2.7.172.0/linux-2.6.15
CROSS_COMPILE = /root/sigma/smp86xx_toolchain_2.7.172.0/build_mipsel_nofpu/staging_dir/bin/mipsel-linux-
endif

ifeq ($(PLATFORM),INIC)
UCOS_SRC = /opt/uCOS/iNIC_rt2880
CROSS_COMPILE = /usr/bin/mipsel-linux-
endif

ifeq ($(PLATFORM),STAR)
LINUX_SRC = /opt/star/kernel/linux-2.4.27-star
CROSS_COMPILE = /opt/star/tools/arm-linux/bin/arm-linux-
endif

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

ifeq ($(PLATFORM),IXP)
LINUX_SRC = /project/stable/Gmtek/snapgear-uclibc/linux-2.6.x
CROSS_COMPILE = arm-linux-
endif

ifeq ($(PLATFORM),INF_TWINPASS)
# Linux 2.6
#LINUX_SRC = /lib/modules/$(shell uname -r)/build
# Linux 2.4 Change to your local setting
LINUX_SRC = /project/stable/twinpass/release/2.0.1/source/kernel/opensource/linux-2.4.31/
CROSS_COMPILE = mips-linux-
endif
Configuration: Windows XP
Firefox 2.0.0.13

73 réponses

Résumé de la discussion

Une carte wifi RT2870 n’est pas reconnue sous Ubuntu 8.04 bêta, et le problème consiste à faire fonctionner le driver, soit en compilant le pilote Linux, soit en utilisant NDISwrapper. Des solutions préconisent soit de suivre un tutoriel pour modifier le Makefile et définir LINUX_SRC et CROSS_COMPILE, soit d’opter pour NDISwrapper afin d’utiliser le pilote Windows. Des retours recommandent l’utilisation de WPA et d’une auto-configuration via NetworkManager, ou le support natif selon l’option retenue, tout en préconisant d’éviter les configurations IP statiques et de privilégier une connexion automatisée. En cas de choix, les avis indiquent que le recours à NDISwrapper peut être fiable avec le pilote Windows, tandis que la compilation directe exige une adaptation des chemins et des outils.

Bobot (l’IA à votre service)
  1. Contributeur
    etape suivante je disais donc.

    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
    Please set 'HAS_WPA_SUPPLICANT=y' and 'HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y'.
    ** Build for being controlled by WpaSupplicant with Ralink Custom Event
    Please set 'HAS_WPA_SUPPLICANT=y' and 'HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=n'.
    command: #./wpa_supplicant -Dralink -ira0 -c wpa_supplicant.conf -d

    donc je dois definir les chemin ver GCC et LD,

    je mets qul gcc?

    renisaac@renisaac-desktop:/usr/src$ sudo updatedb
    renisaac@renisaac-desktop:/usr/src$ locate gcc
    /lib/libgcc_s.so.1
    /usr/bin/c89-gcc
    /usr/bin/c99-gcc
    /usr/bin/gcc
    /usr/bin/gcc-4.2
    /usr/bin/gccmakedep
    /usr/bin/i486-linux-gnu-gcc
    /usr/bin/i486-linux-gnu-gcc-4.2
    /usr/lib/gcc
    /usr/lib/libgccpp.so.1
    /usr/lib/libgccpp.so.1.0.2
    /usr/lib/gcc/i486-linux-gnu
    /usr/lib/gcc/i486-linux-gnu/4.2

    pour LD, c'est bien le /usr/bin/ld, pas le module en /lib/ld-2.7.so?

    Il me demande aussi de choisir entre networkmanager et l'outil ralink, que vaut-il mieux?

    pour le Cflag, les lignes actuelles sont celles-ci :

    ifeq ($(PLATFORM),PC)
    ifneq (,$(findstring 2.4,$(LINUX_SRC)))
    # Linux 2.4
    CFLAGS := -D__KERNEL__ -I$(LINUX_SRC)/include -I$(RT28xx_DIR)/include -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include $(LINUX_SRC)/include/linux/modversions.h $(WFLAGS)
    export CFLAGS
    else
    # Linux 2.6
    EXTRA_CFLAGS := $(WFLAGS) -I$(RT28xx_DIR)/include
    endif
    endif

    que dois-je y changer?
    (pour info, wflags : WFLAGS := -DAGGREGATION_SUPPORT -DPIGGYBACK_SUPPORT -DWMM_SUPPORT -DLINUX -Wall -Wstrict-prototypes -Wno-trigraphs)

    et la question du cross_compile est tjr en suspent,

    renisaac

    PSsoit pas modeste comme ca, tu es doue, des le debut ou tu a aider sur ce forum, tu te distinguais
    1. Contributeur
      ok, vu comme ca cela parait logique, et donc en plus la docu n'est pas exact.

      pour les flags, je connais le principe pour avoir tater un peu gentoo, mais je ne connais pas assez pour savoir si ceux propose peuvent convenir ou pas.

      Pour l'outil de control, je n'ai aucune idee de ce que je dois utiliser.

      ensuite, pour le make, etape 4, j'imagine que je dois etre dans le repertoire ou j'ai decompresser le driver?

      renisaac
      1. Modérateur
        Salut,

        LINUX_SRC c'est une variable qui doit contenir le chemin des souces de ton kernel en fonction de la platforme que tu utilises

        avec la commande
         uname -r
        tu peux savoir quel kernel tu as
        1. Modérateur
          Ou alors un(e) surdoué(e) peut-il m'aider
          P.S. Je suis loin d'être surdoué. Je suis tout simplement pasionné ;-))

          1. Contributeur
            Salut l'ami,
            rhaaa, j'aurai pu le trouver moi-même!

            Par contre, la ligne "CROSS_COMPILE = ", tu crois que je dois la commenter aussi ou pas?

            bon, on va voir l'étape suivante

            Renisaac
            1. Modérateur
              Tu dois avoir une documentation pour l'installation
              Donne le lien pour que je télécharge le drivers.
              Merci
              1. Modérateur
                c'est bon je l'ai téléchargé
                je vais jeter un coup d'oeil ;-)
                1. Contributeur
                  la documentation, je n'ai trouver que celle fournie avec le driver, un peu trop laconique pour moi.

                  Le driver vient de la :

                  http://www.ralinktech.com/ralink/Home/Support/Linux.html

                  le driver RT2870 USB, fourni sous forme de tar, dont la docu. Si tu veux, je peux t'envoyer la docu seule sur ton adresse mail indiquée dans ton profil.

                  renisaac
                  1. Modérateur
                    affiche

                    ls -l /usr/bin/gcc
                    pour ld c'est le chemin de l'exécutable je suppose donc /usr/bin/ld
                    1. Modérateur
                      en fait CROSS_COMPILE doit contenir le chemin /usr/bin

                      CROSS_COMPILE=/usr/bin/

                      puisque dans config.mk tu as
                       CC := $(CROSS_COMPILE)gcc
                       LD := $(CROSS_COMPILE)ld

                      1. Contributeur
                        renisaac@renisaac-desktop:~$ ls -l /usr/bin/gcc
                        lrwxrwxrwx 1 root root 7 2008-04-05 14:48 /usr/bin/gcc -> gcc-4.2
                        renisaac@renisaac-desktop:~$

                        donc ce que je chercher est /usr/bin/gcc-4.2

                        reste cross+compile, cflags et le manager a decider....
                        1. Modérateur
                          en fait
                          tu n'as pas a te faire de souci pour gcc, le lien symbolique pointe vers ton gcc-4.d

                          regarde mon message 9 pour CROSS_COMPILE
                          1. Contributeur
                            j'ai vu pour cross_compile. les messages se croisent
                            1. Modérateur
                              Pour faire make tu dois être dans le répertoire où se trouve le Makefile

                              Attends un peu, je regarde pour CFLAGS
                              1. Contributeur
                                pour info, ma machine est un core 2 duo E4500, mais j'ai quand meme pris ubuntu 32 bits.
                                1. Modérateur
                                  pas grave pour 32bits

                                  en fait par défaut les options sont
                                  ifeq ($(HAS_WPA_SUPPLICANT),y)
                                  WFLAGS += -DWPA_SUPPLICANT_SUPPORT
                                  endif
                                  
                                  ifeq ($(HAS_NATIVE_WPA_SUPPLICANT_SUPPORT),y)
                                  WFLAGS += -DNATIVE_WPA_SUPPLICANT_SUPPORT
                                  endif
                                  
                                  donc c'est le cas
                                          ** Build for being controlled by NetworkManager
                                             Please set 'HAS_WPA_SUPPLICANT=y' and 'HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y'.
                                  on va laisser comme ça
                                  je pense que tu peux essayer l'étape
                                  make
                                  et croiser les doigts bien sûr ;-)
                                  1. Contributeur
                                    heu, dsl, j'ai fait une erreur impardonnable..... je n'ai pas bien croiser les doigts!

                                    /home/renisaac/compilationdriverralink/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../sta/connect.c: In function ‘MakeIbssBeacon’:
                                    /home/renisaac/compilationdriverralink/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../sta/connect.c:2468: warning: format ‘%d’ expects type ‘int’, but argument 2 has type ‘long unsigned int’
                                    /home/renisaac/compilationdriverralink/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../sta/connect.c:2468: warning: format ‘%d’ expects type ‘int’, but argument 6 has type ‘long unsigned int’
                                    CC [M] /home/renisaac/compilationdriverralink/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../sta/wpa.o
                                    CC [M] /home/renisaac/compilationdriverralink/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../os/linux/rt_linux.o
                                    CC [M] /home/renisaac/compilationdriverralink/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../os/linux/rt_profile.o
                                    /home/renisaac/compilationdriverralink/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../os/linux/rt_profile.c:223: warning: ‘rtinet_aton’ defined but not used
                                    CC [M] /home/renisaac/compilationdriverralink/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../os/linux/rt_main_dev.o
                                    /home/renisaac/compilationdriverralink/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../os/linux/rt_main_dev.c: In function ‘rt_ieee80211_if_setup’:
                                    /home/renisaac/compilationdriverralink/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../os/linux/rt_main_dev.c:671: warning: assignment from incompatible pointer type
                                    /home/renisaac/compilationdriverralink/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../os/linux/rt_main_dev.c:694: warning: passing argument 1 of ‘dev_get_by_name’ from incompatible pointer type
                                    /home/renisaac/compilationdriverralink/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../os/linux/rt_main_dev.c:694: error: too few arguments to function ‘dev_get_by_name’
                                    /home/renisaac/compilationdriverralink/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../os/linux/rt_main_dev.c: In function ‘rt28xx_probe’:
                                    /home/renisaac/compilationdriverralink/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../os/linux/rt_main_dev.c:1157: error: implicit declaration of function ‘SET_MODULE_OWNER’
                                    make[2]: *** /home/renisaac/compilationdriverralink/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../os/linux/rt_main_dev.o Error 1
                                    make[1]: *** [_module_/home/renisaac/compilationdriverralink/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux] Error 2
                                    make[1]: Leaving directory `/usr/src/linux-headers-2.6.24-15-generic'
                                    make: *** [LINUX] Error 2
                                    renisaac@renisaac-desktop:~/compilationdriverralink/2007_1220_RT2870_Linux_STA_v1.2.1.0$

                                    tu comprends mieux que moi?
                                    1. Contributeur
                                      make file :

                                      #MODE STA or AP
                                      RT28xx_MODE = STA
                                      #RT28xx_MODE = AP
                                      #TARTET = LINUX or UCOS
                                      TARGET = LINUX
                                      #CHIPSET = 2860 or 2870
                                      #CHIPSET = 2860
                                      CHIPSET = 2870
                                      #RT28xx_DIR = home directory of RT28xx source code
                                      RT28xx_DIR = $(shell pwd)
                                      RTMP_SRC_DIR = $(RT28xx_DIR)/RT$(CHIPSET)
                                      #PLATFORM = 5VT
                                      PLATFORM = PC
                                      #PLATFORM = IKANOS
                                      #PLATFORM = SIGMA
                                      #PLATFORM = INIC
                                      #PLATFORM = STAR
                                      #PLATFORM = IXP
                                      #PLATFORM = INF_TWINPASS
                                      RELEASE = DPA
                                      #RELEASE = DPB
                                      ifeq ($(PLATFORM),5VT)
                                      LINUX_SRC = /opt/fvt_11N_SDK_0807/fvt131x_SDK_11n/linux-2.6.17
                                      CROSS_COMPILE = /opt/crosstool/uClibc_v5te_le_gcc_4_1_1/bin/arm-linux-
                                      endif

                                      ifeq ($(PLATFORM),IKANOS)
                                      LINUX_SRC = /home/sample/projects/LX_2618_RG_5_3_00r4_SRC/linux-2.6.18
                                      CROSS_COMPILE = mips-linux-
                                      endif

                                      ifeq ($(PLATFORM),SIGMA)
                                      LINUX_SRC = /root/sigma/smp86xx_kernel_source_2.7.172.0/linux-2.6.15
                                      CROSS_COMPILE = /root/sigma/smp86xx_toolchain_2.7.172.0/build_mipsel_nofpu/staging_dir/bin/mipsel-linux-
                                      endif

                                      ifeq ($(PLATFORM),INIC)
                                      UCOS_SRC = /opt/uCOS/iNIC_rt2880
                                      CROSS_COMPILE = /usr/bin/mipsel-linux-
                                      endif

                                      ifeq ($(PLATFORM),STAR)
                                      LINUX_SRC = /opt/star/kernel/linux-2.4.27-star
                                      CROSS_COMPILE = /opt/star/tools/arm-linux/bin/arm-linux-
                                      endif

                                      ifeq ($(PLATFORM),PC)
                                      # Linux 2.6
                                      LINUX_SRC = /lib/modules/2.6.24-15-generic/build
                                      # Linux 2.4 Change to your local setting
                                      #LINUX_SRC = /usr/src/linux-2.4
                                      LINUX_SRC_MODULE = /lib/modules/2.6.24-15-generic/kernel/drivers/net/wireless/
                                      CROSS_COMPILE = /usr/bin/
                                      endif

                                      ifeq ($(PLATFORM),IXP)
                                      LINUX_SRC = /project/stable/Gmtek/snapgear-uclibc/linux-2.6.x
                                      CROSS_COMPILE = arm-linux-
                                      endif

                                      ifeq ($(PLATFORM),INF_TWINPASS)
                                      # Linux 2.6
                                      #LINUX_SRC = /lib/modules/$(shell uname -r)/build
                                      # Linux 2.4 Change to your local setting
                                      LINUX_SRC = /project/stable/twinpass/release/2.0.1/source/kernel/opensource/linux-2.4.31/
                                      CROSS_COMPILE = mips-linux-
                                      endif

                                      export RT28xx_DIR RT28xx_MODE LINUX_SRC CROSS_COMPILE PLATFORM RELEASE CHIPSET RTMP_SRC_DIR LINUX_SRC_MODULE

                                      all: build_tools $(TARGET)

                                      build_tools:
                                      make -C tools
                                      $(RT28xx_DIR)/tools/bin2h

                                      UCOS:
                                      make -C os/ucos/ MODE=$(RT28xx_MODE)
                                      echo $(RT28xx_MODE)

                                      LINUX:
                                      ifneq (,$(findstring 2.4,$(LINUX_SRC)))
                                      cp -f os/linux/Makefile.4 $(RT28xx_DIR)/os/linux/Makefile
                                      make -C $(RT28xx_DIR)/os/linux/
                                      ifeq ($(RT28xx_MODE),AP)
                                      cp -f $(RT28xx_DIR)/os/linux/rt$(CHIPSET)ap.o /tftpboot
                                      else
                                      cp -f $(RT28xx_DIR)/os/linux/rt$(CHIPSET)sta.o /tftpboot
                                      endif
                                      else
                                      cp -f os/linux/Makefile.6 $(RT28xx_DIR)/os/linux/Makefile
                                      make -C $(LINUX_SRC) SUBDIRS=$(RT28xx_DIR)/os/linux modules
                                      ifeq ($(RT28xx_MODE),AP)
                                      cp -f $(RT28xx_DIR)/os/linux/rt$(CHIPSET)ap.ko /tftpboot
                                      else
                                      cp -f $(RT28xx_DIR)/os/linux/rt$(CHIPSET)sta.ko /tftpboot
                                      endif
                                      endif

                                      release:
                                      ifeq ($(TARGET), LINUX)
                                      make -C $(RT28xx_DIR)/os/linux -f Makefile.release release
                                      ifeq ($(RELEASE), DPA)
                                      make -C $(RT28xx_DIR)/os/linux -f Makefile.DPA release
                                      rm -rf build
                                      endif
                                      ifeq ($(RELEASE), DPB)
                                      make -C $(RT28xx_DIR)/os/linux -f Makefile.DPB release
                                      rm -rf build
                                      endif
                                      endif

                                      prerelease:
                                      make -C $(RT28xx_DIR)/os/linux -f Makefile.release prerelease
                                      cp $(RT28xx_DIR)/os/linux/Makefile.DPB $(RTMP_SRC_DIR)/os/linux/.
                                      cp $(RT28xx_DIR)/os/linux/Makefile.DPA $(RTMP_SRC_DIR)/os/linux/.

                                      clean:
                                      ifeq ($(TARGET), LINUX)
                                      ifneq (,$(findstring 2.4,$(LINUX_SRC)))
                                      cp -f os/linux/Makefile.4 os/linux/Makefile
                                      else
                                      cp -f os/linux/Makefile.6 os/linux/Makefile
                                      endif
                                      make -C os/linux clean
                                      rm -rf os/linux/Makefile
                                      endif
                                      ifeq ($(TARGET), UCOS)
                                      make -C os/ucos clean MODE=$(RT28xx_MODE)
                                      endif

                                      uninstall:
                                      ifeq ($(TARGET), LINUX)
                                      ifneq (,$(findstring 2.4,$(LINUX_SRC)))
                                      make -C $(RT28xx_DIR)/os/linux -f Makefile.4 uninstall
                                      else
                                      make -C $(RT28xx_DIR)/os/linux -f Makefile.6 uninstall
                                      endif
                                      endif

                                      install:
                                      ifeq ($(TARGET), LINUX)
                                      ifneq (,$(findstring 2.4,$(LINUX_SRC)))
                                      make -C $(RT28xx_DIR)/os/linux -f Makefile.4 install
                                      else
                                      make -C $(RT28xx_DIR)/os/linux -f Makefile.6 install
                                      endif
                                      endif

                                      config.mk


                                      # Support 28xx QA ATE function
                                      HAS_28xx_QA=n

                                      # Support LLTD function
                                      HAS_LLTD=n

                                      # Support Wpa_Supplicant
                                      HAS_WPA_SUPPLICANT=y

                                      # Support Native WpaSupplicant for Network Maganger
                                      HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y

                                      #Support Net interface block while Tx-Sw queue full
                                      HAS_BLOCK_NET_IF=n

                                      CC := $(CROSS_COMPILE)gcc
                                      LD := $(CROSS_COMPILE)ld

                                      WFLAGS := -DAGGREGATION_SUPPORT -DPIGGYBACK_SUPPORT -DWMM_SUPPORT -DLINUX -Wall -Wstrict-prototypes -Wno-trigraphs

                                      ifeq ($(RT28xx_MODE),STA)
                                      WFLAGS += -DCONFIG_STA_SUPPORT -DDBG

                                      ifeq ($(HAS_WPA_SUPPLICANT),y)
                                      WFLAGS += -DWPA_SUPPLICANT_SUPPORT
                                      endif

                                      ifeq ($(HAS_NATIVE_WPA_SUPPLICANT_SUPPORT),y)
                                      WFLAGS += -DNATIVE_WPA_SUPPLICANT_SUPPORT
                                      endif

                                      ifeq ($(HAS_ATE),y)
                                      WFLAGS += -DRALINK_ATE
                                      ifeq ($(HAS_28xx_QA),y)
                                      WFLAGS += -DRALINK_28xx_QA
                                      endif
                                      endif

                                      endif
                                      # endif of ifeq ($(RT28xx_MODE),STA)

                                      ifeq ($(CHIPSET),2860)
                                      WFLAGS +=-DRT2860
                                      endif

                                      ifeq ($(CHIPSET),2870)
                                      WFLAGS +=-DRT2870
                                      endif

                                      ifeq ($(PLATFORM),5VT)
                                      #WFLAGS += -DCONFIG_5VT_ENHANCE
                                      endif

                                      ifeq ($(HAS_BLOCK_NET_IF),y)
                                      WFLAGS += -DBLOCK_NET_IF
                                      endif

                                      ifeq ($(HAS_DFS_SUPPORT),y)
                                      WFLAGS += -DDFS_SUPPORT
                                      endif

                                      ifeq ($(HAS_MC_SUPPORT),y)
                                      WFLAGS += -DMULTIPLE_CARD_SUPPORT
                                      endif

                                      ifeq ($(HAS_LLTD),y)
                                      WFLAGS += -DLLTD_SUPPORT
                                      endif

                                      ifeq ($(PLATFORM),IXP)
                                      WFLAGS += -DBIG_ENDIAN
                                      endif

                                      ifeq ($(PLATFORM),IKANOS)
                                      WFLAGS += -DBIG_ENDIAN -DIKANOS
                                      endif

                                      ifeq ($(PLATFORM),INF_TWINPASS)
                                      WFLAGS += -DBIG_ENDIAN -DINF_TWINPASS
                                      endif

                                      #kernel build options for 2.4
                                      # move to Makefile outside LINUX_SRC := /opt/star/kernel/linux-2.4.27-star

                                      ifeq ($(PLATFORM),STAR)
                                      CFLAGS := -D__KERNEL__ -I$(LINUX_SRC)/include -I$(RT28xx_DIR)/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -Uarm -fno-common -pipe -mapcs-32 -D__LINUX_ARM_ARCH__=4 -march=armv4 -mshort-load-bytes -msoft-float -Uarm -DMODULE -DMODVERSIONS -include $(LINUX_SRC)/include/linux/modversions.h $(WFLAGS)

                                      export CFLAGS
                                      endif

                                      ifeq ($(PLATFORM),SIGMA)
                                      CFLAGS := -D__KERNEL__ -I$(RT28xx_DIR)/include -I$(LINUX_SRC)/include -I$(LINUX_SRC)/include/asm/gcc -I$(LINUX_SRC)/include/asm-mips/mach-tango2 -I$(LINUX_SRC)/include/asm-mips/mach-tango2 -DEM86XX_CHIP=EM86XX_CHIPID_TANGO2 -DEM86XX_REVISION=6 -I$(LINUX_SRC)/include/asm-mips/mach-generic -I$(RT2860_DIR)/include -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -ffreestanding -O2 -fomit-frame-pointer -G 0 -mno-abicalls -fno-pic -pipe -mabi=32 -march=mips32r2 -Wa,-32 -Wa,-march=mips32r2 -Wa,-mips32r2 -Wa,--trap -DMODULE $(WFLAGS)

                                      export CFLAGS
                                      endif

                                      ifeq ($(PLATFORM),5VT)
                                      CFLAGS := -D__KERNEL__ -I$(LINUX_SRC)/include -I$(RT28xx_DIR)/include -mlittle-endian -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -O3 -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-omit-frame-pointer -mapcs -mno-sched-prolog -mabi=apcs-gnu -mno-thumb-interwork -D__LINUX_ARM_ARCH__=5 -march=armv5te -mtune=arm926ej-s --param max-inline-insns-single=40000 -Uarm -Wdeclaration-after-statement -Wno-pointer-sign -DMODULE $(WFLAGS)

                                      export CFLAGS
                                      endif

                                      ifeq ($(PLATFORM),IKANOS)
                                      CFLAGS := -D__KERNEL__ -I$(LINUX_SRC)/include -I$(LINUX_SRC)/include/asm/gcc -I$(LINUX_SRC)/include/asm-mips/mach-tango2 -I$(LINUX_SRC)/include/asm-mips/mach-tango2 -I$(LINUX_SRC)/include/asm-mips/mach-generic -I$(RT28xx_DIR)/include -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -ffreestanding -O2 -fomit-frame-pointer -G 0 -mno-abicalls -fno-pic -pipe -march=lx4189 -Wa, -DMODULE $(WFLAGS)
                                      export CFLAGS
                                      endif

                                      ifeq ($(PLATFORM),INF_TWINPASS)
                                      CFLAGS := -D__KERNEL__ -DMODULE -I$(LINUX_SRC)/include -I$(RT28xx_DIR)/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -G 0 -mno-abicalls -fno-pic -march=4kc -mips32 -Wa,--trap -pipe -mlong-calls $(WFLAGS)
                                      export CFLAGS
                                      endif

                                      ifeq ($(PLATFORM),PC)
                                      ifneq (,$(findstring 2.4,$(LINUX_SRC)))
                                      # Linux 2.4
                                      CFLAGS := -D__KERNEL__ -I$(LINUX_SRC)/include -I$(RT28xx_DIR)/include -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include $(LINUX_SRC)/include/linux/modversions.h $(WFLAGS)
                                      export CFLAGS
                                      else
                                      # Linux 2.6
                                      EXTRA_CFLAGS := $(WFLAGS) -I$(RT28xx_DIR)/include
                                      endif
                                      endif

                                      ifeq ($(PLATFORM),IXP)
                                      EXTRA_CFLAGS := -v $(WFLAGS) -I$(RT28xx_DIR)/include -mbig-endian
                                      endif
                                      1. Modérateur
                                        re,

                                        voici une chose intéressante, sur ma debian
                                        j'ai detarré l'archive et j'ai fait directement make, sans aucune modif

                                        root@debian:~# cd 2007_1220_RT2870_Linux_STA_v1.2.1.0/
                                        
                                        root@debian:~/src/2007_1220_RT2870_Linux_STA_v1.2.1.0# make
                                        make -C tools
                                        make[1]: entrant dans le répertoire « /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/tools »
                                        gcc -g bin2h.c -o bin2h
                                        make[1]: quittant le répertoire « /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/tools »
                                        /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/tools/bin2h
                                        cp -f os/linux/Makefile.6 /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/Makefile
                                        make  -C  /lib/modules/2.6.22.7/build SUBDIRS=/home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux modules
                                        make[1]: entrant dans le répertoire « /usr/src/linux-2.6.22.7 »
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/md5.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/mlme.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/rtmp_wep.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/action.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/ba_action.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/cmm_data.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/rtmp_init.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/rtmp_tkip.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/cmm_sync.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/eeprom.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/cmm_sanity.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/cmm_info.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/cmm_wpa.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/dfs.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../sta/assoc.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../sta/aironet.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../sta/auth.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../sta/auth_rsp.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../sta/sync.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../sta/sanity.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../sta/rtmp_data.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../sta/connect.o
                                        /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../sta/connect.c: In function 'MakeIbssBeacon':
                                        /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../sta/connect.c:2468: warning: format '%d' expects type 'int', but argument 2 has type 'long unsigned int'
                                        /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../sta/connect.c:2468: warning: format '%d' expects type 'int', but argument 6 has type 'long unsigned int'
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../sta/wpa.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../os/linux/rt_linux.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../os/linux/rt_profile.o
                                        /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../os/linux/rt_profile.c:223: warning: 'rtinet_aton' defined but not used
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../os/linux/rt_main_dev.o
                                        /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../os/linux/rt_main_dev.c: In function 'rt_ieee80211_if_setup':
                                        /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../os/linux/rt_main_dev.c:671: warning: assignment from incompatible pointer type
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../os/linux/sta_ioctl.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../os/linux/2870_main_dev.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/2870_rtmp_init.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/rtusb_io.o
                                        /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/rtusb_io.c: In function 'CMDHandler':
                                        /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/rtusb_io.c:1313: warning: passing argument 5 of 'RTUSBInitHTTxDesc' from incompatible pointer type
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/rtusb_bulk.o
                                        /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/rtusb_bulk.c: In function 'RTUSBInitRxDesc':
                                        /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/rtusb_bulk.c:160: warning: passing argument 6 of 'RTUSB_FILL_BULK_URB' from incompatible pointer type
                                        /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/rtusb_bulk.c: In function 'RTUSBBulkOutDataPacket':
                                        /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/rtusb_bulk.c:415: warning: passing argument 5 of 'RTUSBInitHTTxDesc' from incompatible pointer type
                                        /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/rtusb_bulk.c: In function 'RTUSBBulkOutNullFrame':
                                        /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/rtusb_bulk.c:634: warning: passing argument 4 of 'RTUSBInitTxDesc' from incompatible pointer type
                                        /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/rtusb_bulk.c: In function 'RTUSBBulkOutRTSFrame':
                                        /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/rtusb_bulk.c:758: warning: passing argument 4 of 'RTUSBInitTxDesc' from incompatible pointer type
                                        /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/rtusb_bulk.c: In function 'RTUSBBulkOutMLMEPacket':
                                        /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/rtusb_bulk.c:896: warning: passing argument 4 of 'RTUSBInitTxDesc' from incompatible pointer type
                                        /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/rtusb_bulk.c: In function 'RTUSBBulkOutPsPoll':
                                        /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/rtusb_bulk.c:1060: warning: passing argument 4 of 'RTUSBInitTxDesc' from incompatible pointer type
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/rtusb_data.o
                                          CC [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/../../common/cmm_data_2870.o
                                          LD [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/rt2870sta.o
                                          Building modules, stage 2.
                                          MODPOST 1 modules
                                          CC      /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/rt2870sta.mod.o
                                          LD [M]  /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/rt2870sta.ko
                                        make[1]: quittant le répertoire « /usr/src/linux-2.6.22.7 »
                                        cp -f /home/lami20j/src/2007_1220_RT2870_Linux_STA_v1.2.1.0/os/linux/rt2870sta.ko /tftpboot
                                        root@debian:~/src/2007_1220_RT2870_Linux_STA_v1.2.1.0#
                                        
                                        • 1
                                        • 2
                                        • 3
                                        • 4