调试工具
packagegroup-core-tools-debug 定义在 <workspace>/layers/poky/meta 目录中,可将调试工具添加到 rootfs 中。<workspace>/layers/meta-qcom-hwe/recipes-devtools 目录包含追加的软件包组配方 packagegroup-core-tools-debug.bbappend。该追加文件将 ltrace、perf、sysstat 和 valgrind 工具添加到此软件包组中。有关更多信息,请参阅调试 Linux 用户空间问题。
常见 Yocto 构建失败
有关与 QA 问题(例如版本回退)相关的常见构建失败,请参阅验证 QA 问题:版本回退。层排除问题
如果 BitBake 没有解析新添加的层,则该层中的配方不会包含在镜像中。-
运行以下命令,并确认在输出中能看到该层:
-
如果找不到该层,请检查
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,必须在刷写完成后重新启动它,并验证它是否已启动:输出:输出:

