我有一个带有 openocd 和 arm-none-eabi-gdb 的设置,我正在尝试调试 FreeRTOS fw。
我用以下命令启动 openocd:
openocd -f /usr/local/share/openocd/scripts/board/stm32f0discovery.cfg -c "stm32f0x.cpu configure -rtos auto"
该命令工作正常。
然后我运行 arm-none-eabi-gdb -tui
在我的 .gdbinit 的末尾,我有:
target remote localhost:3333
monitor reset halt
file build/fw.elf
load
continue
focus next
但是当我试图停止时 <ctrl>-c
并开始continue
我得到的只是错误:
Cannot execute this command without a live selected thread.
我错过了什么?
我正在使用 JLink Base 调试器。
最佳答案
我的情况与您的情况有点不同,使用 QtCreator 及其 Baremetal 插件进行设置,但发现了一份错误报告,其中说明了解决方法:
https://bugreports.qt.io/browse/QTCREATORBUG-18436
解决方法很简单:
in GDB Init commands add "info threads" after load command. It fixes issue.
我试过了,它成功了,错误消息被删除了,现在我可以在 FreeRTOS 中看到不同的任务。
关于gdb - openocd freertos awareness 无法启动gdb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46335552/