调试工具
在<workspace>/layers/poky/meta 目录中定义的 packagegroup-core-tools-debug 会将调试工具添加为 rootfs 的一部分。<workspace>/layers/meta-qcom-hwe/recipes-devtools 目录中包含追加的包组 recipe,即 packagegroup-core-tools-debug.bbappend。该追加文件向此包组中添加了 ltrace、perf、sysstat 和 valgrind 工具。有关更多信息,请参阅调试 Linux 用户空间问题。
常见 Yocto 构建失败
有关与 QA 问题(如版本回退)相关的常见构建失败,请参阅验证 QA 问题:版本回退。层排除问题
如果 BitBake 未解析新添加的层,则该层中的配方(recipe)不会包含在镜像中。-
运行以下命令,并确认输出中包含该层:
-
如果找不到该层,请检查
conf/bblayers.conf文件的内容,确保其中包含了该层。
调试构建
要生成调试构建,请运行以下命令:DEBUG_BUILD 设置为 1 时使用哪些内核 defconfig 和配置片段,请参阅内核配方下的内核配方部分。
以下来自 recipes-kernel/linux/linux-qcom_6.18.bb 的代码片段为正在构建的内核启用调试配置片段:
工具与日志
验证 QDL 和 ModemManager
如果你使用的是带有systemd 的 Linux 发行版,请使用 systemctl 命令停止 ModemManager。以下是 Ubuntu 22.04 上的示例:
- 要验证
ModemManager的状态,运行以下命令: - 要停止
ModemManager,运行以下命令: ps aux命令不会显示任何/usr/sbin/ModemManager的条目。如果你需要ModemManager,必须在刷写完成后重新启动它,并验证它是否已启动:

