linux - 问题编译内核模块

标签 linux linux-kernel linux-device-driver ubuntu-12.10

我买了一台新的 Toshiba Satellite C855 并在上面安装了 Ubuntu 12.10,结果发现预装的 wifi 和以太网驱动程序无法使用。结果,这台新电脑完全无法上网。我下载了正确驱动程序的源代码,目前正在安装它们。当我构建模块时出现以下错误

make -C /lib/modules/3.5.0-17-generic/build M=/home/<user>/Desktop/rtl_92ce_92se_8723ae_88ee_linux_mac80211_0012.0207.2013 modules
make[1]: Entering directory `/lib/modules/3.5.0-17-generic/build`
make[1]: *** No rule to make target `modules'. Stop.
make[1]: Leaving directory `/lib/modules/3.5.0-17-generic/build`
make: *** [all] Error 2

我必须创建 /lib/modules/3.5.0-17-generic/build 目录。我确实安装了 header (位于 /usr/src/linux-headers-3.5.0-17/)。在发布这个问题之前,我也对这个主题进行了大量的谷歌搜索,但我发现的所有内容要么已经死了,要么没有得到回答。

注意:我宁愿避免显示输出。由于我发布的这台计算机不是东芝机器,而且新机器无法访问互联网,因此我必须手动输入输出或使用闪存驱动器。此外,如果我需要安装任何软件包,我还需要指向 .deb 软件包的链接,而不是 apt-get install 命令。

提前致谢。

最佳答案

我设法自己修复它并想我会发布我的解决方案:

在我最初的问题中,我说过我必须 mkdir 构建目录。我没有意识到这应该是内核源目录的符号链接(symbolic link)。一旦我这样做了,一切(包括我的以太网、wifi 仍然有点不稳定)突然就可以工作了。

关于linux - 问题编译内核模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15469872/

相关文章:

linux - 使用 sed 或 awk 将第一行中的一个词替换为第二行中的另一个词

linux - CallerFilePathAttribute 在 Azure 的 Linux 容器应用程序服务上不返回具有有效目录分隔符的文件路径

linux - 如何在 Linux 驱动程序中注册挂起时的回调?

linux - 哪个 Linux 头文件包含 "struct iface"的定义?

io - 以零长度调用 write() 的后果是什么?

linux-kernel - 绕过 tty 层并复制给用户

c++ - 在C++中动态地将文件放在文件夹中

linux - 如何将多个 PDF 页面合并为一个页面

c - 读取内核空间中的符号链接(symbolic link)

linux - 如何在 Ubuntu 启动时加载自定义模块?