
昨天我全新安裝了 Ubuntu 17.10。為了安裝上述驅動程序,我使用經典方法:
sudo apt update
sudo apt install git
git clone https://github.com/jeremyb31/rtl8192eu-linux-driver
cd rtl8192eu-linux-driver
make
sudo make install
sudo modprobe 8192eu
但是當執行“make”命令時。我收到一堆警告:
~/rtl8192eu-linux-driver$ make
make ARCH=x86_64 CROSS_COMPILE= -C /lib/modules/4.13.0-32-generic/build M=/home/enippeas/rtl8192eu-linux-driver modules
make[1]: Entering directory '/usr/src/linux-headers-4.13.0-32-generic'
CC [M] /home/enippeas/rtl8192eu-linux-driver/core/rtw_cmd.o
CC [M] /home/enippeas/rtl8192eu-linux-driver/core/rtw_security.o
/home/enippeas/rtl8192eu-linux-driver/core/rtw_security.c: In function ‘aes_cipher’:
/home/enippeas/rtl8192eu-linux-driver/core/rtw_security.c:1598:5: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]
for (j = 0; j < 8; j++)
^~~
/home/enippeas/rtl8192eu-linux-driver/core/rtw_security.c:1601:2: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’
payload_index = hdrlen + 8;
^~~~~~~~~~~~~
/home/enippeas/rtl8192eu-linux-driver/core/rtw_security.c: In function ‘aes_decipher’:
/home/enippeas/rtl8192eu-linux-driver/core/rtw_security.c:1984:5: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]
for (j = 0; j < 8; j++)
^~~
/home/enippeas/rtl8192eu-linux-driver/core/rtw_security.c:1987:2: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’
payload_index = hdrlen + 8;
^~~~~~~~~~~~~
CC [M] /home/enippeas/rtl8192eu-linux-driver/core/rtw_debug.o
CC [M] /home/enippeas/rtl8192eu-linux-driver/core/rtw_io.o
CC [M] /home/enippeas/rtl8192eu-linux-driver/core/rtw_ioctl_query.o
CC [M] /home/enippeas/rtl8192eu-linux-driver/core/rtw_ioctl_set.o
CC [M] /home/enippeas/rtl8192eu-linux-driver/core/rtw_ieee80211.o
CC [M] /home/enippeas/rtl8192eu-linux-driver/core/rtw_mlme.o
CC [M] /home/enippeas/rtl8192eu-linux-driver/core/rtw_mlme_ext.o
/home/enippeas/rtl8192eu-linux-driver/core/rtw_mlme_ext.c: In function ‘rtw_delba_check’:
/home/enippeas/rtl8192eu-linux-driver/core/rtw_mlme_ext.c:12427:7: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
else
^~~~
/home/enippeas/rtl8192eu-linux-driver/core/rtw_mlme_ext.c:12429:8: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
psta->recvreorder_ctrl[i].enable = _FALSE;
^~~~
/home/enippeas/rtl8192eu-linux-driver/core/rtw_mlme_ext.c:12430:7: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
if (ret != _FAIL)
^~
/home/enippeas/rtl8192eu-linux-driver/core/rtw_mlme_ext.c:12432:8: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
rtw_reset_continual_no_rx_packet(psta, i);
...... and so on
請注意,「經典方式」在 Ubuntu 16.04 和 17.04 上完美運行。我一整天都在努力讓它發揮作用,但沒有成功。我將不勝感激任何幫助
答案1
您的 wifi 設備在內核 4.13 中受模組 rtl8xxxu 支持,您可以透過將您建置的模組在載入時列入黑名單來受益
echo "blacklist 8192eu" | sudo tee -a /etc/modprobe.d/blacklist.conf
您的 wifi 路由器使用 TKIP 加密,這可能會在 Ubuntu 中導致問題,最好僅使用 WPA2 進行加密