web-dev-qa-db-ja.com

ac600ドライバーがコンパイルされない

Tp-link ac600のドライバを入手する必要があります。そして、私はこのコマンドを書きます:

git clone https://github.com/ulli-kroll/mt7610u.git
cd mt7610u
make

makeコマンドの後、私はこのエラーを受け取ります:

In file included from /home/yalef/mt7610u/include/rt_config.h:55:0,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
/home/yalef/mt7610u/include/rtmp.h:5723:5: error: redeclaration of enumerator ‘IEEE80211_RADIOTAP_TSFT’
     IEEE80211_RADIOTAP_TSFT = 0,
     ^~~~~~~~~~~~~~~~~~~~~~~
In file included from ./include/net/mac80211.h:26:0,
                 from /home/yalef/mt7610u/include/os/rt_linux.h:66,
                 from /home/yalef/mt7610u/include/rtmp_os.h:43,
                 from /home/yalef/mt7610u/include/rtmp_comm.h:44,
                 from /home/yalef/mt7610u/include/rt_config.h:33,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
./include/net/ieee80211_radiotap.h:53:2: note: previous definition of ‘IEEE80211_RADIOTAP_TSFT’ was here
  IEEE80211_RADIOTAP_TSFT = 0,
  ^~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/yalef/mt7610u/include/rt_config.h:55:0,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
/home/yalef/mt7610u/include/rtmp.h:5724:5: error: redeclaration of enumerator ‘IEEE80211_RADIOTAP_FLAGS’
     IEEE80211_RADIOTAP_FLAGS = 1,
     ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./include/net/mac80211.h:26:0,
                 from /home/yalef/mt7610u/include/os/rt_linux.h:66,
                 from /home/yalef/mt7610u/include/rtmp_os.h:43,
                 from /home/yalef/mt7610u/include/rtmp_comm.h:44,
                 from /home/yalef/mt7610u/include/rt_config.h:33,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
./include/net/ieee80211_radiotap.h:54:2: note: previous definition of ‘IEEE80211_RADIOTAP_FLAGS’ was here
  IEEE80211_RADIOTAP_FLAGS = 1,
  ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/yalef/mt7610u/include/rt_config.h:55:0,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
/home/yalef/mt7610u/include/rtmp.h:5725:5: error: redeclaration of enumerator ‘IEEE80211_RADIOTAP_RATE’
     IEEE80211_RADIOTAP_RATE = 2,
     ^~~~~~~~~~~~~~~~~~~~~~~
In file included from ./include/net/mac80211.h:26:0,
                 from /home/yalef/mt7610u/include/os/rt_linux.h:66,
                 from /home/yalef/mt7610u/include/rtmp_os.h:43,
                 from /home/yalef/mt7610u/include/rtmp_comm.h:44,
                 from /home/yalef/mt7610u/include/rt_config.h:33,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
./include/net/ieee80211_radiotap.h:55:2: note: previous definition of ‘IEEE80211_RADIOTAP_RATE’ was here
  IEEE80211_RADIOTAP_RATE = 2,
  ^~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/yalef/mt7610u/include/rt_config.h:55:0,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
/home/yalef/mt7610u/include/rtmp.h:5726:5: error: redeclaration of enumerator ‘IEEE80211_RADIOTAP_CHANNEL’
     IEEE80211_RADIOTAP_CHANNEL = 3,
     ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./include/net/mac80211.h:26:0,
                 from /home/yalef/mt7610u/include/os/rt_linux.h:66,
                 from /home/yalef/mt7610u/include/rtmp_os.h:43,
                 from /home/yalef/mt7610u/include/rtmp_comm.h:44,
                 from /home/yalef/mt7610u/include/rt_config.h:33,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
./include/net/ieee80211_radiotap.h:56:2: note: previous definition of ‘IEEE80211_RADIOTAP_CHANNEL’ was here
  IEEE80211_RADIOTAP_CHANNEL = 3,
  ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/yalef/mt7610u/include/rt_config.h:55:0,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
/home/yalef/mt7610u/include/rtmp.h:5727:5: error: redeclaration of enumerator ‘IEEE80211_RADIOTAP_FHSS’
     IEEE80211_RADIOTAP_FHSS = 4,
     ^~~~~~~~~~~~~~~~~~~~~~~
In file included from ./include/net/mac80211.h:26:0,
                 from /home/yalef/mt7610u/include/os/rt_linux.h:66,
                 from /home/yalef/mt7610u/include/rtmp_os.h:43,
                 from /home/yalef/mt7610u/include/rtmp_comm.h:44,
                 from /home/yalef/mt7610u/include/rt_config.h:33,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
./include/net/ieee80211_radiotap.h:57:2: note: previous definition of ‘IEEE80211_RADIOTAP_FHSS’ was here
  IEEE80211_RADIOTAP_FHSS = 4,
  ^~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/yalef/mt7610u/include/rt_config.h:55:0,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
/home/yalef/mt7610u/include/rtmp.h:5728:5: error: redeclaration of enumerator ‘IEEE80211_RADIOTAP_DBM_ANTSIGNAL’
     IEEE80211_RADIOTAP_DBM_ANTSIGNAL = 5,
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./include/net/mac80211.h:26:0,
                 from /home/yalef/mt7610u/include/os/rt_linux.h:66,
                 from /home/yalef/mt7610u/include/rtmp_os.h:43,
                 from /home/yalef/mt7610u/include/rtmp_comm.h:44,
                 from /home/yalef/mt7610u/include/rt_config.h:33,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
./include/net/ieee80211_radiotap.h:58:2: note: previous definition of ‘IEEE80211_RADIOTAP_DBM_ANTSIGNAL’ was here
  IEEE80211_RADIOTAP_DBM_ANTSIGNAL = 5,
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/yalef/mt7610u/include/rt_config.h:55:0,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
/home/yalef/mt7610u/include/rtmp.h:5729:5: error: redeclaration of enumerator ‘IEEE80211_RADIOTAP_DBM_ANTNOISE’
     IEEE80211_RADIOTAP_DBM_ANTNOISE = 6,
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./include/net/mac80211.h:26:0,
                 from /home/yalef/mt7610u/include/os/rt_linux.h:66,
                 from /home/yalef/mt7610u/include/rtmp_os.h:43,
                 from /home/yalef/mt7610u/include/rtmp_comm.h:44,
                 from /home/yalef/mt7610u/include/rt_config.h:33,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
./include/net/ieee80211_radiotap.h:59:2: note: previous definition of ‘IEEE80211_RADIOTAP_DBM_ANTNOISE’ was here
  IEEE80211_RADIOTAP_DBM_ANTNOISE = 6,
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/yalef/mt7610u/include/rt_config.h:55:0,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
/home/yalef/mt7610u/include/rtmp.h:5730:5: error: redeclaration of enumerator ‘IEEE80211_RADIOTAP_LOCK_QUALITY’
     IEEE80211_RADIOTAP_LOCK_QUALITY = 7,
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./include/net/mac80211.h:26:0,
                 from /home/yalef/mt7610u/include/os/rt_linux.h:66,
                 from /home/yalef/mt7610u/include/rtmp_os.h:43,
                 from /home/yalef/mt7610u/include/rtmp_comm.h:44,
                 from /home/yalef/mt7610u/include/rt_config.h:33,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
./include/net/ieee80211_radiotap.h:60:2: note: previous definition of ‘IEEE80211_RADIOTAP_LOCK_QUALITY’ was here
  IEEE80211_RADIOTAP_LOCK_QUALITY = 7,
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/yalef/mt7610u/include/rt_config.h:55:0,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
/home/yalef/mt7610u/include/rtmp.h:5731:5: error: redeclaration of enumerator ‘IEEE80211_RADIOTAP_TX_ATTENUATION’
     IEEE80211_RADIOTAP_TX_ATTENUATION = 8,
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./include/net/mac80211.h:26:0,
                 from /home/yalef/mt7610u/include/os/rt_linux.h:66,
                 from /home/yalef/mt7610u/include/rtmp_os.h:43,
                 from /home/yalef/mt7610u/include/rtmp_comm.h:44,
                 from /home/yalef/mt7610u/include/rt_config.h:33,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
./include/net/ieee80211_radiotap.h:61:2: note: previous definition of ‘IEEE80211_RADIOTAP_TX_ATTENUATION’ was here
  IEEE80211_RADIOTAP_TX_ATTENUATION = 8,
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/yalef/mt7610u/include/rt_config.h:55:0,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
/home/yalef/mt7610u/include/rtmp.h:5732:5: error: redeclaration of enumerator ‘IEEE80211_RADIOTAP_DB_TX_ATTENUATION’
     IEEE80211_RADIOTAP_DB_TX_ATTENUATION = 9,
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./include/net/mac80211.h:26:0,
                 from /home/yalef/mt7610u/include/os/rt_linux.h:66,
                 from /home/yalef/mt7610u/include/rtmp_os.h:43,
                 from /home/yalef/mt7610u/include/rtmp_comm.h:44,
                 from /home/yalef/mt7610u/include/rt_config.h:33,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
./include/net/ieee80211_radiotap.h:62:2: note: previous definition of ‘IEEE80211_RADIOTAP_DB_TX_ATTENUATION’ was here
  IEEE80211_RADIOTAP_DB_TX_ATTENUATION = 9,
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/yalef/mt7610u/include/rt_config.h:55:0,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
/home/yalef/mt7610u/include/rtmp.h:5733:5: error: redeclaration of enumerator ‘IEEE80211_RADIOTAP_DBM_TX_POWER’
     IEEE80211_RADIOTAP_DBM_TX_POWER = 10,
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./include/net/mac80211.h:26:0,
                 from /home/yalef/mt7610u/include/os/rt_linux.h:66,
                 from /home/yalef/mt7610u/include/rtmp_os.h:43,
                 from /home/yalef/mt7610u/include/rtmp_comm.h:44,
                 from /home/yalef/mt7610u/include/rt_config.h:33,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
./include/net/ieee80211_radiotap.h:63:2: note: previous definition of ‘IEEE80211_RADIOTAP_DBM_TX_POWER’ was here
  IEEE80211_RADIOTAP_DBM_TX_POWER = 10,
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/yalef/mt7610u/include/rt_config.h:55:0,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
/home/yalef/mt7610u/include/rtmp.h:5734:5: error: redeclaration of enumerator ‘IEEE80211_RADIOTAP_ANTENNA’
     IEEE80211_RADIOTAP_ANTENNA = 11,
     ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./include/net/mac80211.h:26:0,
                 from /home/yalef/mt7610u/include/os/rt_linux.h:66,
                 from /home/yalef/mt7610u/include/rtmp_os.h:43,
                 from /home/yalef/mt7610u/include/rtmp_comm.h:44,
                 from /home/yalef/mt7610u/include/rt_config.h:33,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
./include/net/ieee80211_radiotap.h:64:2: note: previous definition of ‘IEEE80211_RADIOTAP_ANTENNA’ was here
  IEEE80211_RADIOTAP_ANTENNA = 11,
  ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/yalef/mt7610u/include/rt_config.h:55:0,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
/home/yalef/mt7610u/include/rtmp.h:5735:5: error: redeclaration of enumerator ‘IEEE80211_RADIOTAP_DB_ANTSIGNAL’
     IEEE80211_RADIOTAP_DB_ANTSIGNAL = 12,
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./include/net/mac80211.h:26:0,
                 from /home/yalef/mt7610u/include/os/rt_linux.h:66,
                 from /home/yalef/mt7610u/include/rtmp_os.h:43,
                 from /home/yalef/mt7610u/include/rtmp_comm.h:44,
                 from /home/yalef/mt7610u/include/rt_config.h:33,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
./include/net/ieee80211_radiotap.h:65:2: note: previous definition of ‘IEEE80211_RADIOTAP_DB_ANTSIGNAL’ was here
  IEEE80211_RADIOTAP_DB_ANTSIGNAL = 12,
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/yalef/mt7610u/include/rt_config.h:55:0,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
/home/yalef/mt7610u/include/rtmp.h:5736:5: error: redeclaration of enumerator ‘IEEE80211_RADIOTAP_DB_ANTNOISE’
     IEEE80211_RADIOTAP_DB_ANTNOISE = 13
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./include/net/mac80211.h:26:0,
                 from /home/yalef/mt7610u/include/os/rt_linux.h:66,
                 from /home/yalef/mt7610u/include/rtmp_os.h:43,
                 from /home/yalef/mt7610u/include/rtmp_comm.h:44,
                 from /home/yalef/mt7610u/include/rt_config.h:33,
                 from /home/yalef/mt7610u/os/linux/rt_profile.c:28:
./include/net/ieee80211_radiotap.h:66:2: note: previous definition of ‘IEEE80211_RADIOTAP_DB_ANTNOISE’ was here
  IEEE80211_RADIOTAP_DB_ANTNOISE = 13,
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scripts/Makefile.build:291: recipe for target '/home/yalef/mt7610u/os/linux/rt_profile.o' failed
make[2]: *** [/home/yalef/mt7610u/os/linux/rt_profile.o] Error 1
Makefile:1562: recipe for target '_module_/home/yalef/mt7610u' failed
make[1]: *** [_module_/home/yalef/mt7610u] Error 2
make[1]: выход из каталога «/usr/src/linux-headers-4.20.5-042005-generic»
Makefile:370: recipe for target 'modules' failed
make: *** [modules] Error 2

Xubuntu 18.04 uname -rがあります。

4.20.5-042005-generic

どうすれば修正できますか?

1

Parrot OSでも同じエラーが発生しました。私の解決策はあまり良くないことはわかっていますが、私にとってはうまくいきました。

ファイルを編集するだけ

include/rtmp.h

そして、ieee80211_radiotap_type列挙型の宣言のコメントを外します。

/* enum ieee80211_radiotap_type {
    IEEE80211_RADIOTAP_TSFT = 0,
    IEEE80211_RADIOTAP_FLAGS = 1,
    IEEE80211_RADIOTAP_RATE = 2,
    IEEE80211_RADIOTAP_CHANNEL = 3,
    IEEE80211_RADIOTAP_FHSS = 4,
    IEEE80211_RADIOTAP_DBM_ANTSIGNAL = 5,
    IEEE80211_RADIOTAP_DBM_ANTNOISE = 6,
    IEEE80211_RADIOTAP_LOCK_QUALITY = 7,
    IEEE80211_RADIOTAP_TX_ATTENUATION = 8,
    IEEE80211_RADIOTAP_DB_TX_ATTENUATION = 9,
    IEEE80211_RADIOTAP_DBM_TX_POWER = 10,
    IEEE80211_RADIOTAP_ANTENNA = 11,
    IEEE80211_RADIOTAP_DB_ANTSIGNAL = 12,
    IEEE80211_RADIOTAP_DB_ANTNOISE = 13
};*/

その後、インストールを続行します

1
Fin Heuer