![我需要重新编译整个linux内核吗](https://linux22.com/image/72732/%E6%88%91%E9%9C%80%E8%A6%81%E9%87%8D%E6%96%B0%E7%BC%96%E8%AF%91%E6%95%B4%E4%B8%AAlinux%E5%86%85%E6%A0%B8%E5%90%97.png)
如果我更改了 Linux 内核的某些部分或某个子系统,我是否必须重新编译整个内核?有没有办法只重新编译那个特定的子系统?
答案1
如果您已经编译过一次,那么重新编译不会再次构建和编译整个内核,因为内核构建系统使用 Makefile,而 Makefile 又遵循增量构建。因此,您最近更改的模块只会与一些相关文件一起构建,这些文件将不需要太多时间
答案2
您可以构建内核树的一部分(此处drivers/media
),例如通过make M=drivers/media
。使用modules_install
目标时,您必须将模块安装到/lib/modules/<release>/extra/
.
欲了解更多信息,请参阅Documentation/kbuild/