[lldb-dev] New linux process plugin

William Lynch wlynch at wlynch.cx
Fri Jul 23 20:37:05 PDT 2010


A very small patch which should help building on Darwin:

Index: lib/Makefile
===================================================================
--- lib/Makefile (revision 109318)
+++ lib/Makefile (working copy)
@@ -65,7 +65,7 @@
               lldbPluginObjectFileMachO.a \
               lldbPluginProcessGDBRemote.a \
               lldbPluginUtility.a \
-              lldbSymbolVendorMaxOSX.a
+              lldbPluginSymbolVendorMacOSX.a
 endif

 ifeq ($(HOST_OS),Linux)


On Fri, Jul 23, 2010 at 9:19 PM, Stephen Wilson <wilsons at start.ca> wrote:

> Hi all,
>
> I just pushed the new linux process plugin.  A few notes:
>
> I updated the makefiles to build only under linux.  I do not know if
> this will build on a mac.  Perhaps someone can try and let me know the
> result.
>
> Only very basic breakpoint/step-over functionality is present.  For
> example, we cannot resolve pending breakpoints yet, so one must set
> breakpoints with the debugee stopped on entry.
>
> Only x86_64 at the moment (will add i386 soon).
>
> Here is a simple example of what is working for those who might like to
> test it out:
>
>
> ===--------------------------------------------------------------------------===
>  > cat ctest.c
>
>   void foo() { return; }
>
>   void bar() { return; }
>
>   int main()
>   {
>       foo();
>       bar();
>       return 0;
>   }
>
>  > lldb ./ctest
>   Current executable set to './ctest' (x86_64).
>   (lldb) r -s
>   Launching '/home/steve/tmp/ctest'  (x86_64)
>   (lldb) Process 0 Launching
>   Process 0 Stopped
>   * thread #1: tid = 0x4789, pc = 0x0000003206200af0, ...
>   (lldb) b s -n foo
>   Breakpoint created: 1: name = 'foo', locations = 1, resolved = 1
>   (lldb) b s -n bar
>   Breakpoint created: 2: name = 'bar', locations = 1, resolved = 1
>   (lldb) p c
>   Resuming process 0
>   (lldb) Process 0 Stopped
>   * thread #1: tid = 0x4789, pc = 0x0000000000400478, ...
>      1
>      2 ->      void foo() { return; }
>      3
>      4         void bar() { return; }
>      5
>   (lldb) p c
>   Resuming process 0
>   (lldb) Process 0 Stopped
>   * thread #1: tid = 0x4789, pc = 0x000000000040047e, ...
>      1
>      2         void foo() { return; }
>      3
>      4 ->      void bar() { return; }
>      5
>      6         int main()
>      7         {
>   (lldb) q
>
> ===--------------------------------------------------------------------------===
>
>
> It's a start.  Let be know of any issues, comments, advice, etc.
>
> Thanks!
> Steve
> _______________________________________________
> lldb-dev mailing list
> lldb-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20100723/7b38f633/attachment.html>


More information about the lldb-dev mailing list