zBug

Hi there,

First, apologies if this list isn’t the right place for this.

I just wanted to mention that we’ve been working on a GUI front-end for LLDB called zBug, and that it’s reasonably useful for anyone looking for simple GUI debugger that wraps LLDB. You can find it at http://github.com/pzion/zBug/.

It uses the LLDB Python bindings and uses PySide (open-source Qt bindings for Python) for the GUI. It works on Linux and OS X, and is BSD licensed. It should work fine with Windows as well once LLDB Windows support is here (if it isn’t already).

I developed zBug originally as an independent project, but we later adapted it to add support for debugging the JITted DSL in our product Fabric Engine, a platform for 3D effects and tools. Because it works with both traditional applications as well as with the JIT environment I use it daily to debug our platform as well as the JIT code it runs. It’s got all the usual GUI goodies such as source code and assembly view, stack and threads, locals and registers, breakpoints, as well as a direct LLDB command prompt.

Thanks for all the great work on LLDB, the Python support made it quite straightforward to build zBug!

Peter Zion
Fabric Engine Inc.

Thanks, Peter! That’ll be fun to check out at some point.

What did you find to be the more challenging parts of integrating LLDB with zBug?

Thanks Todd! Here is a screenshot: http://imgur.com/MsQCZUF

The hardest part was definitely a lack of documentation – I’m not 100% sure I was looking in the right place, but particularly as an API client it wasn’t obvious at first how I should be using the API. However, once I figured out the first few steps, it became clear; the API seems to be well designed and once I saw the pattern of how it was designed it was pretty clear what to do.

Peter Zion
Fabric Engine Inc.

Okay, that’s good feedback. Maybe in the future as we try to make that a smoother process, we might be able to use some of your input to better document it :slight_smile: