如何在 Debian Buster 上仅重新编译 Linux 内核的特定部分?

如何在 Debian Buster 上仅重新编译 Linux 内核的特定部分?

我目前正在开发一个Linux安全模块,它存储在security内核源代码树的目录中。当我使用以下命令编译和安装内核时,模块已加载并且一切正常:

fakeroot make -j9 -f debian/rules.gen binary-arch_amd64_none_amd64
apt remove linux-image-4.19.0-9-amd64-unsigned 
dpkg -i linux-image-4.19.0-9-amd64-unsigned_4.19.118-2_amd64.deb

但是,如果我对模块进行更改并使用上面的命令重建内核,它们将不会包含在新映像中,除非我删除所有构建输出并重新编译整个内核。

有没有办法只重建内核的特定部分,即仅重建security目录?

答案1

感谢一位大学教授的帮助,我发现了这一点。您必须删除该文件debian/stamps/build_amd64_none_amd64

# The next line make sure only the required parts are rebuild
rm debian/stamps/build_amd64_none_amd64
# Rebuild the kernel
fakeroot debian/rules source
fakeroot make  -j9 -f  debian/rules.gen binary-arch_amd64_none_amd64

相关内容