Wifi

在 Mint 17 上安裝 Archer T4U AC1300 驅動程序時出現問題

  • December 31, 2019

原始問題

我找不到我的問題的任何具體答案,我為 T4U 發現的所有驅動程序安裝問題都與核心版本有關,可以提出解決方法,我認為我的不同……

我從 TP Link 購買了 Archer T4U AC1300,並嘗試從此處安裝開源驅動程序。

我使用薄荷 17:

beljs@beljs-Inspiron-580 ~ $ cat /etc/*-release
DISTRIB_ID=LinuxMint
DISTRIB_RELEASE=17.3
DISTRIB_CODENAME=rosa
DISTRIB_DESCRIPTION="Linux Mint 17.3 Rosa"
NAME="Ubuntu"
VERSION="14.04.3 LTS, Trusty Tahr"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 14.04.3 LTS"
VERSION_ID="14.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
cat: /etc/upstream-release: est un dossier

beljs@beljs-Inspiron-580 ~ $ uname -a
Linux beljs-Inspiron-580 3.19.0-32-generic #37~14.04.1-Ubuntu SMP Thu Oct 22 09:37:25 UTC 2015 i686 i686 i686 GNU/Linux

但我相信我在安裝驅動程序時遇到的問題更多的是編譯問題或程式碼本身的錯誤(?)。

我遵循了不同網站上推薦的基本驅動程序安裝程序:

git clone https://github.com/abperiasamy/rtl8812AU_8821AU_linux.git
cd rtl8812AU_8821AU_linux/
make
sudo make install

但我在ioctl_cfg80211.c的製作過程中總是出錯(對不起法語):

beljs@beljs-Inspiron-580 ~ $ git clone https://github.com/abperiasamy/rtl8812AU_8821AU_linux.git
Clonage dans 'rtl8812AU_8821AU_linux'...
remote: Counting objects: 1498, done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 1498 (delta 1), reused 0 (delta 0), pack-reused 1492
Réception d'objets: 100% (1498/1498), 3.53 MiB | 692.00 KiB/s, done.
Résolution des deltas: 100% (909/909), done.
Vérification de la connectivité... fait.
beljs@beljs-Inspiron-580 ~ $ cd rtl8812AU_8821AU_linux/
beljs@beljs-Inspiron-580 ~/rtl8812AU_8821AU_linux $ make
make ARCH=i386 CROSS_COMPILE= -C /lib/modules/3.19.0-32-generic/build M=/home/beljs/rtl8812AU_8821AU_linux  modules
make[1]: entrant dans le répertoire « /usr/src/linux-headers-3.19.0-32-generic »
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_cmd.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_security.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_debug.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_io.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_ioctl_query.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_ioctl_set.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_ieee80211.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_mlme.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_mlme_ext.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_wlan_util.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_vht.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_pwrctrl.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_rf.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_recv.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_sta_mgt.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_ap.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_xmit.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_p2p.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_tdls.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_br_ext.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_iol.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_sreset.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_btcoex.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_beamforming.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_odm.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/efuse/rtw_efuse.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/os_dep/osdep_service.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/os_intfs.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/usb_intf.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/usb_ops_linux.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_linux.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/xmit_linux.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/mlme_linux.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/recv_linux.o
 CC [M]  /home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.o
/home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:5971:2: error: initialization from incompatible pointer type [-Werror]
 .del_station = cfg80211_rtw_del_station,
 ^
/home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:5971:2: error: (near initialization for ‘rtw_cfg80211_ops.del_station’) [-Werror]
cc1: all warnings being treated as errors
make[2]: *** [/home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.o] Erreur 1
make[1]: *** [_module_/home/beljs/rtl8812AU_8821AU_linux] Erreur 2
make[1]: quittant le répertoire « /usr/src/linux-headers-3.19.0-32-generic »
make: *** [modules] Erreur 2

我還嘗試從以下位置安裝驅動程序: github.com/Grief/archer-t4u 但也遇到了類似的錯誤(不完全相同的位置,但在同一個文件中)

解決方案

簡而言之:

  1. git clone https://github.com/gnab/rtl8812au
  2. 更新/rtl8812au/os_dep/linux/usb_intf.c-> 找到 archer T4U AC1200 (2357:0101) 的原始匯流排 ID,並在後面添加一條帶有 AC1300 (2357:010d) 的匯流排 ID 的行:
{USB_DEVICE(0x2357, 0x0101),.driver_info = RTL8812},    
**{USB_DEVICE(0x2357, 0x010d),.driver_info = RTL8812},**
  1. 按照提供的自述文件中的說明進行操作./rtl8812au

那裡!

更多解釋:

問題有兩個方面:

  1. 司機

GAD3R 為我的核心提供了一個正確版本的驅動程序連結,該驅動程序可以正確編譯(非常感謝!)。

  1. 弓箭手T4U AC1200T4U AC1300

在我找到的 99% 的參考文獻中,Archer T4U 指的是T4U AC1200,我購買的是T4U AC1300(也是 -v2)。我不確定它是否只是一個區域產品名稱,或者它是否對應於實際的硬體更改。也許 T4u AC1300 也很新:我能找到的唯一參考資料是在Tp-Link 的官方網站上

無論如何,觸發我的是wikidevi上給出的巴士 ID :

該記憶棒支持 USB 3.0,USB ID:2357:0101

lsusb 給了我 2357:010 d

解決方案很明顯:我在中添加了一行/rtl8812au/os_dep/linux/usb_intf.c(參見上面的簡短解決方案)

注意:我檢查了 AC1300 usb id 已經在

https://github.com/abperiasamy/rtl8812AU_8821AU_linux

引用自:https://unix.stackexchange.com/questions/345375