Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

LLDB Error: Unable to resolve breakpoint to any actual locations

Tags:

I'm trying to use LLDB (because I apparently can't use gdb anymore) to debug som of my code and each time I try to...

(lldb) breakpoint set -f file.c -l 65

I get...

Breakpoint 1: no locations (pending)
WARNING: Unable to resolve breakpoint to any actual locations.

I've tried different things like assigning the breakpoint to a function and such but I always get the same error. When running there's no break. Please help!

like image 282
Stone Avatar asked Jun 29 '15 18:06

Stone


People also ask

How to set breakpoint in lldb?

In lldb you can set breakpoints by typing either break or b followed by information on where you want the program to pause. After the b command, you can put either: a function name (e.g., b my_subroutine ) a line number (e.g., b 12 )


1 Answers

lldb: resolving breakpoints to locations

If your out file doesn't have debugging symbols enabled for Code Generation Options then breakpoints likely can't be resolved to locations within your .c source file.

When you create your out file enable debug information:

$ clang -g -O0 file.c -o file
$ lldb file
(lldb) target create "file"
Current executable set to 'file' (x86_64).
(lldb) b file.c:13
Breakpoint 1: where = file`main + 29 at file.c:13, address = 0x0000000100000f4d

Using the -g option adds the necessary debug information to your file for lldb. It should now resolve when you breakpoint set -f file.c -l n (which can be abbreviated as b file.c:n).

-g Generate debug information. Note that Clang debug information works best at -O0.

like image 129
l'L'l Avatar answered Sep 20 '22 19:09

l'L'l