LLDB breakpoints are not working

Published on Christian Mayer's Weblog

[This post was originally posted as a Stackoverflow question.]

I have a file lldb.txt with LLDB commands:

target create PATH/TO/BINARY
br s -a 0x7fff5fc01031
br li
process launch --stop-at-entry

So I can start debugging a program with lldb -S lldb.txt. After launch the debugger stops at 0x7fff5fc01000 (under Mac OS X 10.10) in dyld. As you can see I want to stop at breakpoint 0x7fff5fc01031 in dyld.

The breakpoint is unresolved but locations = 1.

[lldb]> breakpoint list
Current breakpoints:
1: address = 0x00007fff5fc01031, locations = 1
	1.1: address = 0x00007fff5fc01031, unresolved, hit count = 0

When I add the breakpoint manually then it’s resolved.

[lldb]> br s -a 0x7fff5fc01031
Breakpoint 2: where = dyld`_dyld_start + 49, address = 0x00007fff5fc01031
[lldb]> breakpoint list
Current breakpoints:
1: address = 0x00007fff5fc01031, locations = 1
	1.1: address = 0x00007fff5fc01031, unresolved, hit count = 0

2: address = 0x00007fff5fc01031, locations = 1, resolved = 1, hit count = 0
	2.1: where = dyld`_dyld_start + 49, address = 0x00007fff5fc01031, resolved, hit count = 0

How can I add a breakpoint in my lldb.txt file which will be automatically resolved?

I don’t know if this is a bug or if I’m doing it wrong with breakpoints. I already checked out the newest version (lldb-330.99.0) from the LLDB Git repository and compiled it with xcodebuild. But it’s still unresolved.

Update, 2015-01-22 00:13: See the mailing list discussion. By the way, the TOT expression used in the discussion stands for Top of Tree.

Update, 2015-01-24 16:56: The first breakpoint from the source file (lldb.txt) which will work is after all images has been linked. This is in dyld.cpp at function _main(), line link(sMainExecutable, sEnv.DYLD_BIND_AT_LAUNCH, true, ImageLoader::RPathChain(NULL, NULL));

I reported bug #22323 to the bugtracker.

Update, 2015-03-05: It seems that they deleted my question on Stackoverflow.

More Resources

Recent Posts

About the Author

Christian is a professional software developer living in Vienna, Austria. He loves coffee and is strongly addicted to music. In his spare time he writes open source software. He is known for developing automatic data processing systems on Debian Linux server.

Categories: Programming
Tags: LLVM, LLDB, Debugger, ASM, Assembly, Assembler, Git, Breakpoint, Address, ToT, Top of Tree

Archive | Categories | RSS Feed | Usage | Imprint
Copyright © 2006 by