我是否每次都必须编译内核,即使是很小的更改?

我是否每次都必须编译内核,即使是很小的更改?

在我的项目中,我在block/ioctl.c.我们都知道内核编译和构建需要几个小时。即使是很小的改变,我也是从头开始编译的。那么有没有办法只编译和构建更改过的文件呢?

答案1

不,内核编译不需要“几个小时”。莱纳斯·托瓦兹 (Linus Torvalds) 说,这需要他12分钟过去,现在少了很多。当然,这取决于您是否正在编译一个仅包含硬件所需的驱动程序的内核,或者一个包含人们可能需要的所有驱动程序的发行版内核 - 但即使对于稍微老旧的机器上的发行版内核,它所花费的时间也比一个小时完成完整的构建。

此外,如果您更改内核的一个文件,则无需进行完整的构建。赶紧跑makemake modules如果有模块需要重新编译),并且只有更改的文件(以及依赖它的文件,如果它是头文件)将被重新编译。

相关内容