[lldb-dev] Graphical lldb

Greg Clayton gclayton at apple.com
Fri Nov 7 14:26:08 PST 2014

There is currently some example of GUI from the command line with the lldb/examples/python/lldbtk.py. 

The quickest way to do this would be to use python, which can already bridge to objective C, and drive the GUI from python as a new LLDB command. See the example code:

% svn cat http://llvm.org/svn/llvm-project/lldb/trunk/examples/python/lldbtk.py

What this does is it installs new lldb command line commands "tk-variables", "tk-process" and "tk-target" which can be used anytime from within LLDB. When you execute the command, the GUI will display itself and way for your to close the window, and then it exits.

So you don't have to re-skin LLDB at all of you don't want to. 

If you still want to write your own GUI, I would suggest you open a pseudo terminal (pty) and your write into stdin of the master side, and listen for output on the master and give the slave side to lldb by calling:


Then whenever you get text from your text widget, you write it into the master side of the pty which gives it to LLDB when you run the command interpreter. If you want more details on that let me know.


> On Nov 7, 2014, at 11:34 AM, Jose H <jose.francisco.hevia at gmail.com> wrote:
> Hello
> I want to create a graphical UI to lldb in cocoa-qt so I could see data structures graphically, like lines as 2D lines, 1D graphs and so on.
> So as a first step I need to replace lldb tool text input and output with a graphical window alternative.
> I mean replacing the text command line with a text edit widget like Xcode does.
> What is the best way(more elegant, less work) to do this?.
> I have lots of experience making graphical programs but little handling terminal ones.
> _______________________________________________
> lldb-dev mailing list
> lldb-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev

More information about the lldb-dev mailing list