我正在尝试使用远程 GDB 调试嵌入式项目。我的系统:
- 目标:ARM Cortex M0。
- SEGGER J-Link GDB Server V6.10 命令行版
- arm-none-eabi-gdb 7.10.1.20160616-cvs
- CLion 2016.2.2,内部版本 #CL-162.1967.7
- Ubuntu 16.04
我的 .gdbinit 文件中有以下内容:
target remote localhost:2331 #(I remove this line when debugging with CLion)
set verbose on
file "/path_to_output_file/blinky.elf"
monitor reset
break main
困扰我好几天的事情是,如果我直接从终端使用 gdb 进行调试,这可以正常工作,但当我在 CLion 中使用调试器时则不行。在 CLion 中,我收到错误消息:
此目标不支持“监视”命令。
我的理论是终端接受“监视器重置”命令(至少它不会抱怨)。另一方面,CLion 会打印一个错误,但之后似乎会继续前进而不进行重置。结果似乎是,当我在 CLion 中启动新的调试会话时,我不会从 main() 的开头开始。
CLion 是否阻止了监控命令?如果是这样,那么为什么以及是否有解决方法?