我正在尝试将 Asus pce-N10 无线适配器的驱动程序安装到 ubuntu mate 16.04 它提供了驱动程序的源文件和一个基本上说的自述文件:
安装:输入“sudo su make install”
当然,这种方式是行不通的。相反,我得到了错误:
gcc:错误:/lib/modules/4.4.0-22-generic/build/include/linux/autoconf.h:没有这样的文件或目录
显然那里没有该文件。我怎么做一个?
apt-get install linux-headers-generic
返回
linux-headers-generic 已经是最新版本(4.4.0.22.23)
我在互联网上找到了一堆建议来编译我自己的内核,但没有这样做。例如,这个中的#4 相当陈旧,文件夹的命名方案似乎与我得到的不同。我尝试导航到解压缩源中的 makefile 并运行链接中列出的命令:
make menuconfig
但是那个返回的错误甚至更多丢失的文件甚至看起来不相关。
这里提到的另一个问题建议在源文件夹中使用以下命令:
make oldconfig
make prepare
这些执行没有错误,但 autoconf.h 似乎没有出现在任何相关文件夹中。在 /lib/modules/4.4.0-22-generic/ 文件夹中运行时make prepare
会导致以下错误:
make 1 : *** 没有规则来制作 'arch/x86/entry/syscalls/../../include/generated/asm/syscalls_32.h 所需的目标'arch/x86/entry/syscalls/syscall_32.tbl' '。停止
linux/autoconf.h
generated/autoconf.h
在较新的内核中似乎已移至它。我不知道这是什么时候发生的,但我在使用 3.2 内核时遇到了同样的问题。我刚刚重命名,这似乎解决了这个特定问题。但是可能会有其他更改,所以我怀疑您仍然需要将驱动程序移植到所需的内核。另请参阅https://serverfault.com/a/568397