Arm 如何使用“设置LLDB”;openocd和JTAG板;

Arm 如何使用“设置LLDB”;openocd和JTAG板;,arm,embedded,lldb,cortex-m,openocd,Arm,Embedded,Lldb,Cortex M,Openocd,我试图将lldb与openocd/jtag板一起使用,但我遇到了麻烦。 我已经使用openocd和gdb在L0 STMicroelectronics板上进行开发,它工作得非常好。 现在我希望lldb也一样 我是在LLDB主机端这样做的 $ lldb bin/token.elf (lldb) target create "bin/token.elf" Current executable set to 'bin/token.elf' (arm). (lldb) platform select r

我试图将lldb与openocd/jtag板一起使用,但我遇到了麻烦。 我已经使用openocd和gdb在L0 STMicroelectronics板上进行开发,它工作得非常好。 现在我希望lldb也一样

我是在LLDB主机端这样做的

$ lldb bin/token.elf 
(lldb) target create "bin/token.elf"
Current executable set to 'bin/token.elf' (arm).
(lldb) platform select remote-gdb-server
  Platform: remote-gdb-server
  Connected: no
(lldb) platform connect connect://localhost:5557
  Platform: remote-gdb-server
  Hostname: (null)
  Connected: yes
(lldb) target list 
Current targets:
* target #0: /home/cme/Projects/Tacos/ledger/trunk/se/build/st31_bolos/bin/token.elf ( arch=arm-unknown-unknown, platform=host )
在openocd/GDB服务器端,我正确地看到“信息:在tcp/5557上接受'GDB'连接”

但现在我不知道如何继续:

(lldb) process launch 
error: process launch failed: Child exec failed.
我还尝试了“流程继续”,但lldb抱怨没有流程

对于gdb,进程被认为已经在运行,我使用reset/continue命令,而不是“run”命令

有人知道如何在openocd/jtag gdb服务器上使用lldb吗

谢谢你的帮助


C/M.

根据我们的研究,不编写额外代码就不可能用lldb调试远程(裸机!)目标

对于基本功能,lldb需要至少识别一个线程上下文。 gdb也是如此。但是在gdb中,有一些存根是在远程系统上伪造现有线程实现的。[1]

根据lldb邮件列表[2]上的对话,答案编译为: 我们必须编写一些(python)代码,以使远程裸机能够使用lldb

[1]

[2]