我Ubuntu 18.04我正在尝试通过以下方式构建自己的内核本指南和本指南。
不幸的是命令:
AUTOBUILD=1 fakeroot debian/rules binary-headers binary-generic binary-perarch skipdbg=false
给我这个错误:
dh binary-headers
dh: Unknown sequence binary-headers (choose from: binary binary-arch binary-indep build build-arch build-indep clean install install-arch install-indep)
debian/rules:35: recipe for target 'binary-headers' failed
make: *** [binary-headers] Error 2
我怀疑指南没有更新,我搜索了很多关于规则脚本食谱列表,但我没有发现任何有用的东西。
有人能帮助我吗?
谢谢你!
编辑1但是允许的接收binary binary-arch binary-indep build build-arch build-indep clean install install-arch install-indep
还不会产生带有嵌入调试符号的内核。
编辑2Debian 规则存储在其中,您可以/usr/src/linux-source-{KERNEL-VERSION}/debian/rules.d
在其中0-common-vars.mk
找到所有允许的开关。
答案1
如果您正在寻找未修改内核的调试符号(dbgsym),那么只需从官方存储库下载它们,如下所述:
否则对于来自其他来源的任何内核(如 Debian 包)。
-
您需要做的只是安装
pkg-config-dbgsym
软件包并将skipdbg=false
标志添加到 Debian make 文件(debian/rules
)sudo apt-get install pkg-config-dbgsym LANG=C fakeroot debian/rules clean LANG=C fakeroot debian/rules binary-headers binary-generic binary-perarch skipdbg=false
重要的提示
clean
更改配置、添加标志或错过安装某些构建依赖项后,此处的命令是必须的。因此,每次尝试时,您都需要运行 clean 命令,make
它将使用更新的当前设置重新配置构建树。