【发布时间】:2021-07-04 04:11:40
【问题描述】:
好的,这个问题我已经有一段时间了,因为我从来没有在网上找到解决方案。 我想我会在这里问,并希望其他人是否也遇到过这个问题(并且幸运地解决了它)。
因此,从左侧圈出的按钮开始的那些按钮的预期行为是代码在嵌入式硬件上被编译、刷新和运行。圈起来的第二个和前面的一样,但是会监听断点并启动一个 gdb 服务器。
当按下第一个按钮时,它将失败并显示以下错误消息:
[0mOpen On-Chip Debugger 0.10.0 (2020-07-29) [https://github.com/sysprogs/openocd]
Licensed under GNU GPL v2
libusb1 09e75e98b4d9ea7909e8837b7a3f00dda4589dc3
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
WARNING: interface/stlink-v2.cfg is deprecated, please switch to interface/stlin
k.cfg
Info : auto-selecting first available session transport "hla_swd". To override u
se 'transport select <transport>[0m'.
Info : The selected transport took over low-level target control. The results mi
ght differ compared to plain JTAG/SWD
Info : clock speed 2000 kHz
Info : STLINK V2J37S7 (API v2) VID:PID 0483:3748
Info : Target voltage: 3.218361
Info : STM32F439VIT6.cpu: hardware has 6 breakpoints, 4 watchpoints
Info : starting gdb server for STM32F439VIT6.cpu on 3333
Info : Listening on port 3333 for gdb connections
semihosting is enabled
Error: The 'tcl_port' command must be used before 'init'.
但是当按下第二个按钮(调试)时,它会闪烁,运行代码并启动 gdb 服务器都没有问题。
使用的工具是:
- OpenOCD(版本:OpenOCD-20200729-0.10)。
- Clion(版本:2021.1,但问题在以前的版本上仍然存在)作为我的 IDE。
- mingw64 通过 msys 安装。
- arm gdb 调试器(版本 8.3.1)
如果您知道问题可能是什么,请告诉我。我可以在没有断点的情况下继续使用调试,但是我无法运行,这很烦人。
【问题讨论】:
-
我也在使用 ST 链接调试器来刷新软件。
-
在 Jetbrains 问题跟踪器上打开了一个问题。 youtrack.jetbrains.com/issue/CPP-24752