gpt4 book ai didi

c++ - 嵌入式 Linux 上的轻量级调试

转载 作者:IT王子 更新时间:2023-10-29 01:17:52 24 4
gpt4 key购买 nike

我正在开发一个在基于 Linux 的小型 SBC(~32MB RAM)上运行的应用程序。可悲的是,我的应用程序最近变得太大而无法再在 GDB 下运行。有谁知道我可以在嵌入式 Linux 中使用的任何好的、轻量级的调试方法吗?即使能够查看线程的堆栈跟踪也会非常有帮助。

我应该提到这个应用程序是用 C++ 编写的并且运行多线程,所以 gdbserver 是不行的,因为它不适用于多线程应用程序。

提前致谢

摩诃

最佳答案

gdbserver 绝对适用于多线程应用程序,我现在正在处理一个超过 25 个线程的嵌入式项目,并且我们一直使用 gdbserver。

info threads 

列出系统中的所有线程

thread <thread number from info threads>  

切换到那个执行线程。

thread apply XXX <command>  

在XXX指定的线程上运行,也可以是'all'。因此,如果您希望所有正在运行的线程的回溯,请执行

thread apply all bt

一旦您处于给定线程的执行流程中,您所有的典型命令都将像在单线程进程中一样工作。

关于c++ - 嵌入式 Linux 上的轻量级调试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1829741/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com