我正在尝试在 Ubuntu 16.04 下安装 USB wifi 加密狗。它附带据称与 Linux 2.6x-4.1x 兼容的 Linux 驱动程序。我尝试安装驱动程序(名为 RTL88x2BU_WiFi_linux_v5.2.4.1),但最初收到以下错误:
.../include/osdep_service.h:355:2: error: implicit declaration of function ‘allow_s
ignal’ [-Werror=implicit-function-declaration]
allow_signal(SIGTERM);
我发现将此代码添加到脚本“osdep_service.h”可以避免出现错误:
#include <linux/version.h>
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 11, 0)
#include <linux/sched/signal.h>
#endif
但后来我收到一个新的错误:
.../os_dep/linux/ioctl_cfg80211.c:734:3: error: too many arguments to function ‘cfg80211_roamed’
cfg80211_roamed(padapter->pnetdev
我在其他地方读到,从此代码中删除 #if LINUX... 条件可以解决问题:
cfg80211_roamed(padapter -> pnetdev
# if LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 39) || defined(COMPAT_KERNEL_RELEASE)
, notify_channel
#endif
, cur_network -> network.MacAddress
, pmlmepriv -> assoc_req + sizeof(struct rtw_ieee80211_hdr_3addr) + 2
, pmlmepriv -> assoc_req_len - sizeof(struct rtw_ieee80211_hdr_3addr) - 2
, pmlmepriv -> assoc_rsp + sizeof(struct rtw_ieee80211_hdr_3addr) + 6
, pmlmepriv -> assoc_rsp_len - sizeof(struct rtw_ieee80211_hdr_3addr) - 6
, GFP_ATOMIC
);
不幸的是我现在遇到了以下错误:
.../os_dep/linux/ioctl_cfg80211.c:734:3: error: too many arguments to function ‘cfg80211_roamed’
cfg80211_roamed(padapter->pnetdev
有人能告诉我如何安装这个 wifi 适配器吗?我对 Linux 不太熟悉。谢谢。
答案1
我猜对于 Linux,Wifi Dongle 是自动检测的。我使用 Cana Kit Dongle,它不需要驱动程序,也不需要更改 WiFi 设置。但最近买了 teratec。它似乎不起作用。我对此不太确定。
编辑:您需要驱动程序。从互联网上下载驱动程序并运行
sudo insmod <driver-file>