kernel.org kbuild 文档的“如何构建外部模块”部分(https://www.kernel.org/doc/Documentation/kbuild/modules.txt)说:
要构建外部模块,您必须有一个可用的预构建内核,其中包含构建中使用的配置和头文件。此外,内核必须在启用模块的情况下构建。如果您使用的是发行版内核,则您的发行版将为您运行的内核提供一个软件包。
另一种方法是使用“make”目标“modules_prepare”。
我的问题是,替代什么?替代
“有一个可用的预构建内核,其中包含配置和头文件”
或者
“内核必须是在启用模块的情况下构建的”
或者是其他东西?
答案1
它是“使用分发包”的替代方案,“使用分发包”与可用的“配置和头文件”同义。
.config
在执行此操作之前,您应该添加一个。大多数发行版内核都提供此功能/proc/config.gz
;将其复制到源树的顶部并
gunzip -c config.gz > .config
仅当源版本 >= 正在运行的内核时,这才有效。请注意,如果您打算在正在运行的内核中使用该模块,则源版本号应该是确切地相同。