It's a bug — I've heard reports that building against a newer libedit will fix 
the problem:

http://www.thrysoee.dk/editline/

However, most distributions ship with an ancient version. I'm not sure if 
there's any (licensing or other) restrictions that would prevent someone from 
checking in the updated libedit into lldb source tree…I haven't really had time 
to look at this problem in detail though..


Dan


From: Matthew Sorrels <[email protected]<mailto:[email protected]>>
Date: Tuesday, 2 July, 2013 8:26 PM
To: "[email protected]<mailto:[email protected]>" 
<[email protected]<mailto:[email protected]>>
Subject: [lldb-dev] Losing prompt when running any python commands

I'm seeing something a little odd but I'm not really sure if it's a bug.

If I start lldb (on Linux) and then execute any python commands, then set a 
target and a breakpoint and run it, when the breakpoint goes off I've lost my 
prompt.  It's sitting there waiting for input, but I don't see the "(lldb)" 
that should be there.  This happens when I run any python commands at all.  It 
appears to just lose the prompt.  Some commands will cause the prompt to return 
(like bt) but others like n or step execute but the prompt doesn't return.

This loss of prompt also happens if you run any python commands with command 
script import.

Is there some sort of mode or is this a bug?

Here's some sample output where I run the python command "script print lldb"

matthews@matthews-linux:~/work/llvm/llvm/build$ bin/lldb -x
(lldb) script print lldb
<module 'lldb' from 
'/data/work/llvm/llvm/build/lib/python2.7/site-packages/lldb/__init__.py'>
(lldb) target create /home/matthews/bin/mytest
Current executable set to '/home/matthews/bin/mytest' (x86_64).
(lldb) b main
Breakpoint 1: where = mytest`main + 30 at test.c:14, address = 
0x000000000040054e
(lldb) run
Process 20443 launched: '/home/matthews/bin/mytest' (x86_64)
Process 20443 stopped
* thread #1: tid = 0x4fdb, 0x000000000040054e mytest`main(argc=1, 
argv=0x00007fff62b4b058) + 30 at test.c:14, stop reason = breakpoint 1.1
    frame #0: 0x000000000040054e mytest`main(argc=1, argv=0x00007fff62b4b058) + 
30 at test.c:14
   11      int main(int argc, char *argv[])
   12      {
   13          int i;
-> 14          printf("Argc=%d\n", argc);
   15          for(i=0;i<argc;i++)
   16              printf("Argument %d: %s\n", i, argv[i]);
   17
<should be an (lldb) prompt here but it's just blank and waiting for input>



_______________________________________________
lldb-dev mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev

Reply via email to