6

我从 git 存储库编译了各种 Linux 内核。有时我将内核复制到其他系统并需要内核头文件来编译外部模块。

我尝试运行“make headers_install”,但它只生成了一个包含/文件夹。当我试图将外部模块指向该文件夹时,它抱怨找不到 Makefile。

打包内核头文件以进行部署的正确方法是什么?

谢谢。

4

2 回答 2

7

而是创建内核包,对于基于 dpkg 的发行版是“make deb-pkg”,对于基于 RPM 的发行版是“make rpm-pkg”。这些创建了多个包,其中一个是可用于外部模块构建的包。对于 Debian 软件包应该是 linux-headers-*,对于 RPM 版本应该是“devel”软件包。

于 2013-10-21T14:38:31.200 回答
1

在某些方面,这只是对先前答案的扩展。如果您查看内核源代码中的文件 scripts/package/builddeb,您会发现脚本代码从内核构建中选择构建外部模块所需的文件并将它们放入 /usr/src/linux-headers-$version。通过在 builddeb 文件中搜索字符串“# Build kernel header package”,我可以在本地内核版本中找到该脚本代码。如果您想手动执行操作,您可以手动执行该脚本代码。

于 2017-09-07T09:10:28.293 回答