首页 > 解决方案 > linux/init.h 不在 usr/include/linux 目录中

问题描述

当试图包含linux/init.h我的编辑器时告诉我这个文件不存在。做了一些关于如何解决这个问题的研究我发现/usr/src有一些,我假设内核版本,当我查找如何安装用于 linux 驱动程序开发的头文件时。我所做的是将一堆文件夹linux-headers-5.10.0-kali4-common移入/usr/includeand /usr/lib/module/5.10.0-kali4-amd64/source.

有一段时间我认为它有效,但给了我一个新的错误。此时我很沮丧cannot open source file "asm/rwonce.h" (dependency of "linux/init.h")cannot open source file "asm/linkage.h" (dependency of "linux/module.h")关掉一切,现在我在这里。

现在我想知道是否有更好的方法来获取我需要的 linux 驱动程序开发的源代码和依赖项。到目前为止,谷歌并不是很有帮助。而且我厌倦了移动可能会或可能不会损坏我的系统的文件。

标签: linuxdriver

解决方案


首先撤消你所做的。

然后,安装内核源。在根目录中是 README 文件,它描述了构建驱动程序的要求,并指向源代码树中包含的详细文档。https://elixir.bootlin.com/linux/v3.10.108/source/README


推荐阅读