启动调试
启动新的进程
- gdb
- lldb
% gdb a.out
(gdb) run
(gdb) r
% lldb a.out
(lldb) process launch
(lldb) run
(lldb) r
设置进程的运行参数
-
在调试器启动之前设置参数
- gdb
- lldb
% gdb --args a.out <args...>
(gdb) run% lldb -- a.out <args...>
(lldb) run -
在调试器启动之后、运行之前设置参数
- gdb
- lldb
(gdb) set args <args...>
(gdb) run(lldb) settings set target.run-args <args...>
(lldb) run -
在运行的时候设置参数
- gdb
- lldb
(gdb) run <args...>
(gdb) r <args...>(lldb) process launch -- <args...>
(lldb) run <args...>
(lldb) r <args...>
环境变量设置
-
在运行前设置环境变量
- gdb
- lldb
(gdb) set env DEBUG 1
(lldb) settings set target.env-vars DEBUG=1
(lldb) set se target.env-vars DEBUG=1
(lldb) env DEBUG=1 -
单条命令设置环境变量并启动进程
- gdb
- lldb
(lldb) process launch -E DEBUG=1
-
在运行前取消环境变量
- gdb
- lldb
(gdb) unset env DEBUG
(lldb) settings remove target.env-vars DEBUG
(lldb) set rem target.env-vars DEBUG
attach 到已有进程
-
根据进程号
pid
进行 attach- gdb
- lldb
(gdb) attach 123
(lldb) process attach --pid 123
(lldb) attach -p 123 -
根据进程名称进行 attach
- gdb
- lldb
(gdb) attach a.out
(lldb) process attach --name a.out
(lldb) pro at -n a.out -
等待进程名称并 attach
- gdb
- lldb
(gdb) attach -waitfor a.out
(lldb) process attach --name a.out --waitfor
(lldb) pro at -n a.out -w
显示参数
- gdb
- lldb
(gdb) show args
Argument list to give program being debugged when it is started is "1 2 3".
(lldb) settings show target.run-args
target.run-args (array of strings) =
[0]: "1"
[1]: "2"
[2]: "3"