启动调试
(lldb) process launch
(lldb) run
(lldb) r
(lldb) process launch -- <args>
(lldb) run <args>
(lldb) r <args>
% lldb -- a.out 1 2 3
(lldb) settings set target.run-args 1 2 3
(lldb) run
(lldb) settings set target.env-vars DEBUG=1
(lldb) set se target.env-vars DEBUG=1
(lldb) env DEBUG=1
(lldb) unset env DEBUG
(lldb) settings show target.run-args
(lldb) attach -p 123
(lldb) process attach --name a.out
(lldb) process attach --name a.out --waitfor
(lldb) gdb-remote add:port
(lldb) gbd-remote port
调试指令
控制指令
(lldb) step
(lldb) s
(lldb) settings show target.process.thread.step-avoid-regexp
target.process.thread.step-avoid-regexp (regex) = ^std::
(lldb) settings set target.process.thread.step-avoid-regexp ^std::|^abc
(lldb) next
(lldb) n
(lldb) si
(lldb) ni
(lldb) finish
(lldb) thread return <返回值>
(lldb) thread until 12
(lldb) f
断点命令
(lldb) b main
(lldb) b test.c:12
(lldb) br s -n foo -c '(int)strcmp(y,"hello") == 0'
(lldb) br l
(lldb) br del 1
(lldb) br dis 1
(lldb) br en 1
(lldb) wa s v global_var
(lldb) wa s e -- my_ptr
(lldb) watchpoint modify -c '(global==5)'
(lldb) watch l
(lldb) watch del 1
变量查询
(lldb) fr v
(lldb) fr v -a
(lldb) p bar
(lldb) fr v -f x bar