원래 질문
제 질문에 대한 구체적인 답변을 찾을 수 없습니다. T4U에 대해 제가 찾은 모든 드라이버 설치 문제는 커널 버전과 관련되어 있으며 해결 방법을 제안할 수 있습니다. 제 생각에는 다른 것 같습니다...
TP Link에서 Archer T4U AC1300을 구입하고 TP Link에서 오픈 소스 드라이버를 설치하려고 했습니다.여기.
저는 민트 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
하지만 make 과정에서 항상 오류가 발생합니다.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
업데이트
/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},**
제공된 추가 정보 파일의 지침을 따르세요.
./rtl8812au
바라보다!
추가 설명:
두 가지 문제가 있습니다.
- 운전사
GAD3R이 나에게협회내 커널에 맞는 드라이버의 올바른 버전이 올바르게 컴파일됩니다(정말 감사합니다!).
- 사수T4U AC1200그리고T4U AC1300
Archer T4U에 대해 제가 찾은 참고자료 중 99%는T4U AC1200, 제가 구매한 것은T4U AC1300(또한 -v2). 이것이 단지 지역 제품 이름인지 아니면 실제 하드웨어 변경에 해당하는지 잘 모르겠습니다. 어쩌면 T4u AC1300도 더 최신일 수도 있습니다. 제가 찾을 수 있는 유일한 참고 자료는 다음과 같습니다.TP-Link 공식 홈페이지.
어쨌든 나를 촉발시킨 것은 위에서 알려준 버스 ID였다.위키피디아 :
스틱은 USB 3.0을 지원하며 USB ID는 2357:0101입니다.
lsusb가 나에게 2357:010을 주었다디
해결책은 분명했습니다. 한 줄을 추가했습니다 /rtl8812au/os_dep/linux/usb_intf.c
(위의 짧은 해결책 참조).
알아채다: 확인해보니 AC1300 USB id가 이미 들어있습니다.
답변2
위의 솔루션이 나에게 도움이 되었음을 확인할 수 있습니다.
Worked on:
Ubuntu: 16.04.2,
Kernel: 4.8.0-36-generic,
gcc : gcc version 5.4.0 20160609
내가 만들어야 했던 유일한 차이점은 "lsusb" 명령을 실행할 때였습니다. "2357:010e"라는 장치가 표시됩니다. usb_intf.c에 새 "줄"을 추가해야 할 때 참조를 "d"에서 "e"로 변경해야 합니다. :)