编译/安装 Wifi dongle 驱动程序缺少内核模块?

编译/安装 Wifi dongle 驱动程序缺少内核模块?

目标

将 wifi 适配器安装Netis wf2190到带有 Debian 的 NUC 上。

环境

  • NUC DC3217IYE
  • 内蒂斯WF2190
  • Debian Linux3.16-0.bpo.2-amd64 #1 SMP Debian 3.16.3-2~bpo70+1 (2014-09-21) x86_64 GNU/Linux
  • 已安装build-essential

我从网站上获得了驱动程序,我所要做的就是运行一个脚本install.sh,该脚本在尝试编译时会抛出此错误。我有/lib/modules/3.16-0.bpo.2-amd64/目录,但没有build文件夹。我尝试添加此文件夹,但脚本显然正在寻找一些源文件,但我不知道它们是什么以及在哪里获取它们。

有什么建议吗?

错误

Authentication requested [root] for make driver:
make ARCH=x86_64 CROSS_COMPILE= -C /lib/modules/3.16-0.bpo.2-amd64/build M=/root/netis-wf2190/driver/rtl8812AU_linux_v4.3.8_12175.20140902  modules
make: *** /lib/modules/3.16-0.bpo.2-amd64/build: No such file or directory.  Stop.
make: *** [modules] Error 2
##################################################
Compile make driver error: 2
Please check error Mesg
##################################################

...创建丢失的build文件夹后

它正在寻找规则(??)

Authentication requested [root] for make driver:
make ARCH=x86_64 CROSS_COMPILE= -C /lib/modules/3.16-0.bpo.2-amd64/build M=/root/netis-wf2190/driver/rtl8812AU_linux_v4.3.8_12175.20140902  modules
make[1]: Entering directory `/lib/modules/3.16-0.bpo.2-amd64/build'
make[1]: *** No rule to make target `modules'.  Stop.
make[1]: Leaving directory `/lib/modules/3.16-0.bpo.2-amd64/build'
make: *** [modules] Error 2
##################################################
Compile make driver error: 2
Please check error Mesg
##################################################

这是我如何安装内核的

添加deb http://http.debian.net/debian-backports squeeze-backports(-sloppy) mainsource.list然后

 aptitude -t wheezy-backports install linux-image-amd64

如何为3.16-0.bpo.2-amd64内核安装内核源代码?

我尝试了这个解决了!

 # apt-get install linux-headers-3.16-0.bpo.2-amd64

/lib/modules/3.16-0.bpo.2-amd64

 ln -s /usr/src/linux-headers-3.16-0.bpo.2-amd64/ build

然后跑了install.sh

答案1

笔记:我使用的是 Fedora 20,但这里的问题是相同的,只是路径和 Linux 内核版本号不同。

当我下载并尝试运行安装脚本时,bash ./install.sh我也注意到了此错误消息。

make: *** /lib/modules/3.16.3-200.fc20.x86_64/build: 没有这样的文件或目录。停止。

该脚本不具备创建该目录的能力,并且期望该目录已经存在以供使用:

/lib/modules/3.16.3-200.fc20.x86_64/build

检查发现它不存在:

$ cd /lib/modules/3.16.3-200.fc20.x86_64/build
bash: cd: /lib/modules/3.16.3-200.fc20.x86_64/build: No such file or directory

这个目录可能有点混乱,但是如果你将目录向上更改 1 级,情况会更清晰一些:

$ cd /lib/modules/3.16.3-200.fc20.x86_64/
$ ls -l | grep build
lrwxrwxrwx.  1 root root     39 Sep 29 14:25 build -> /usr/src/kernels/3.16.3-200.fc20.x86_64

build到另一个目录的链接也是如此。在本例中,它是一个链接,如果您安装了内核的开发树,则将在其中安装它们。因此,要解决此问题,您只需为包含它们的发行版安装一个软件包即可。

在 Fedora 上,这些软件包的名称为kernel-devel-<kernel version #>,所以我怀疑如果您只是安装了这些软件包,就可以了。

相关内容