[Qt-creator] LLDB support
andre.poenitz at nokia.com
andre.poenitz at nokia.com
Wed Aug 22 10:30:31 CEST 2012
Michael Seydl wrote:
> I'd like to take it on
That would be nice.
> because the gdb helpers often go bonkers when inspecting more complex data structures.
> Guess that's more due to limitation on the aged gdb and it's gdb/mi.
Partially. The problem is only so prominent on Mac/gdb because it still uses the
"compiled" dumpers, and there's nobody around keeping them up-to-date after
changes to the container implementations. While we had a few breakages on the
Linux/Windows sides (using gdb with Python) they usually get fixed rather quickly.
Just having a recent GDB with Python working properly on Mac would already
solve most of the problems, as would a cross-platform LLDB.
> As there are two ways to integrate lldb my question to you is which one you prefer.
>
> 1. Integrating the lldb api (LLDB.frame). (Which is obviously an IPC engine and code for that already exists.
> Unfortunately the host/guest ipc code is quite outdated. At least in the master branch)
> 2. Integrating the python interface. (just like the current gdbengine does right now). Hey, maybe I could even
> reuse some of the scripts there.
>
> Whaddaya say?
It's hard to tell from here, as it's unclear what kind of exact impact either solution has.
Some points to consider:
- it's not an advantage to depend on a quickly changing binary interface (is that "pro 2."?)
- too much Python doesn't help performance (is that "pro 1."?)
- we have a couple of users already extensively using the python dumpers for their own things ("pro 2.")
- fixing a Python script is easier than recompiling Creator ("pro 2.")
So all in all I'd lean towards the Python interface. There are also already two layers of
abstraction (bridge.py / dumper.py ) shielding the actual dumpers from "too much gdb",
but since there was no real other use case, that might need some polishing.
> I already got the 2. version as far as launching the executable and halting at a break point :)
On Mac, I suppose? But anyway, that's definitely a good start ;-)
Andre'
More information about the Qt-creator
mailing list