如果我更改了 Linux 内核的某些部分或某个子系统,我是否必须重新编译整个内核?有没有办法只重新编译那个特定的子系统?
答案1
如果您已经编译过一次,那么重新编译不会再次构建和编译整个内核,因为内核构建系统使用 Makefile,而 Makefile 又遵循增量构建。因此,您最近更改的模块只会与一些相关文件一起构建,这些文件将不需要太多时间
答案2
您可以构建内核树的一部分(此处drivers/media
),例如通过make M=drivers/media
。使用modules_install
目标时,您必须将模块安装到/lib/modules/<release>/extra/
.
欲了解更多信息,请参阅Documentation/kbuild/