**

Linux内核编译错误:make[1]: *** 没有规则可制作目标“debian/canonical-certs.pem”,由“certs/x509_certificate_list” 需求。 停止。**

解决方法:我使用的是Ubuntu虚拟机

在下载的Linux内核源码的解压文件目录下

当你在终端中执行过配置内核的命令#make menuconfig 后

会在该目录下生成一个隐藏文件.config

终端中使用root权限使用命令#gedit .config

删除以下内容(Ctrl+f快速查找)

CONFIG_MODULE_SIG_KEY="cert/signing_key.pem" #这个可能不需要删除,删除了反而可能出其他问题make modules_install时报错
CONFIG_SYSTEM_TRUSTED_KEYS="debian/canonical-certs.pem" #这个要删除

引号里的内容置为空

之后再make就可以了

但当你完全重新编译使用命令#make mrproper 后.config文件就会被清理,再次make可能还再次出现这个错误

当然由于内核版本不同,可能解决了该问题,在make modules_install时会出现另外的报错,如遇到,可看我另一篇文章尝试解决

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐