我的 wifi 驱动程序 (RTL8192CE) 编译失败

我的 wifi 驱动程序 (RTL8192CE) 编译失败

我正在尝试让我的 wifi 在我新安装的 Debian Sid(amd64,内核 3.10.11-1)上工作。输出的相关行lspci是:

06:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8188CE 802.11b/g/n WiFi Adapter (rev 01)

并且此 Wi-Fi 卡无法识别:

# iwconfig
eth0      no wireless extensions.
lo        no wireless extensions.

如果您需要它,这里是 lshw -c network 的输出:

*-network NON-RÉCLAMÉ   
description: Network controller
produit: RTL8188CE 802.11b/g/n WiFi Adapter
fabriquant: Realtek Semiconductor Co., Ltd.
identifiant matériel: 0
information bus: pci@0000:06:00.0
version: 01
bits: 64 bits
horloge: 33MHz
fonctionnalités: pm msi pciexpress cap_list
configuration: latency=0
ressources: portE/S:3000(taille=256) mémoire:f1d00000-f1d03fff

所以我在网上查找我应该安装的驱动程序。我发现我应该去这一页并安装rtl8192ce驱动程序。我下载并解压它,然后按照文件的说明进行操作readme。我更改为超级用户并尝试使用make.这是输出:

# make      
make -C /lib/modules/3.10-3-amd64/build M=/home/damien/Downloads/rtl_92ce_92se_92de_8723ae_88ee_linux_mac80211_0012.0207.2013 modules
make[1]: entrant dans le répertoire « /usr/src/linux-headers-3.10-3-amd64 »
  CC [M]  /home/damien/Downloads/rtl_92ce_92se_92de_8723ae_88ee_linux_mac80211_0012.0207.2013/base.o
In file included from /home/damien/Downloads/rtl_92ce_92se_92de_8723ae_88ee_linux_mac80211_0012.0207.2013/base.c:39:0:
/home/damien/Downloads/rtl_92ce_92se_92de_8723ae_88ee_linux_mac80211_0012.0207.2013/pci.h:247:15: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘rtl_pci_probe’
 int __devinit rtl_pci_probe(struct pci_dev *pdev,
               ^
/home/damien/Downloads/rtl_92ce_92se_92de_8723ae_88ee_linux_mac80211_0012.0207.2013/base.c: In function ‘rtl_action_proc’:
/home/damien/Downloads/rtl_92ce_92se_92de_8723ae_88ee_linux_mac80211_0012.0207.2013/base.c:885:32: error: ‘struct ieee80211_conf’ has no member named ‘channel’
       rx_status.freq = hw->conf.channel->center_freq;
                                ^
/home/damien/Downloads/rtl_92ce_92se_92de_8723ae_88ee_linux_mac80211_0012.0207.2013/base.c:886:32: error: ‘struct ieee80211_conf’ has no member named ‘channel’
       rx_status.band = hw->conf.channel->band;
                                ^
/home/damien/Downloads/rtl_92ce_92se_92de_8723ae_88ee_linux_mac80211_0012.0207.2013/base.c: In function ‘rtl_send_smps_action’:
/home/damien/Downloads/rtl_92ce_92se_92de_8723ae_88ee_linux_mac80211_0012.0207.2013/base.c:1451:24: error: ‘struct ieee80211_conf’ has no member named ‘channel’
   info->band = hw->conf.channel->band;
                        ^
make[4]: *** [/home/damien/Downloads/rtl_92ce_92se_92de_8723ae_88ee_linux_mac80211_0012.0207.2013/base.o] Erreur 1
make[3]: *** [_module_/home/damien/Downloads/rtl_92ce_92se_92de_8723ae_88ee_linux_mac80211_0012.0207.2013] Erreur 2
make[2]: *** [sub-make] Erreur 2
make[1]: *** [all] Erreur 2
make[1]: quittant le répertoire « /usr/src/linux-headers-3.10-3-amd64 »
make: *** [all] Erreur 2

看来错误来自源代码,而不是由于缺少库或其他原因。

知道我下一步应该做什么,或者我应该如何解决这个编译错误?

答案1

请在 /etc/apt/sources.list 中启用 contrib 和 non-free,安装firmware-realtek并重新启动。

相关内容