firemail
标题:
使用GDB调试
[打印本页]
作者:
firemail
时间:
2017-9-6 16:19
标题:
使用GDB调试
本帖最后由 firemail 于 2017-9-7 17:08 编辑
(gdb) l <-------------------- l命令相当于list,从第一行开始例出原码。
(gdb) <-------------------- 直接回车表示,重复上一次命令
(gdb) break 16 <-------------------- 设置断点,在源程序第16行处。
(gdb) break func <-------------------- 设置断点,在函数func()入口处。
(gdb) info break <-------------------- 查看断点信息。
(gdb) r <--------------------- 运行程序,run命令简写
(gdb) n <--------------------- 单条语句执行,next命令简写。
(gdb) c <--------------------- 继续运行程序,continue命令简写。
(gdb) p i <--------------------- 打印变量i的值,print命令简写。
(gdb) bt <--------------------- 查看函数堆栈。
(gdb) s <--------------------- 进入函数内部。
stepin 简写s
(gdb) finish <--------------------- 退出函数。
(gdb) q <--------------------- 退出gdb。
断点的删除
delete [breakpoints num] [range...]
d 5
作者:
firemail
时间:
2017-9-6 16:36
cmake调试支持:
CMakeLists.txt中加入
SET(CMAKE_BUILD_TYPE "Debug")
SET(CMAKE_CXX_FLAGS_DEBUG "$ENV{CXXFLAGS} -O0 -Wall -g2 -ggdb")
SET(CMAKE_CXX_FLAGS_RELEASE "$ENV{CXXFLAGS} -O3 -Wall")
作者:
firemail
时间:
2017-9-7 16:13
gdb下输入参数
则,运行gcc/g++ -g prog.c/cpp -o prog
就可以用gdb调试程序prog
#gdb prog
进入gdb调试界面
输入参数命令set args 后面加上程序所要用的参数,注意,不再带有程序名,直接加参数,如:
set args -l a -C abc
回车后输入
r
即可开始运行
欢迎光临 firemail (http://firemail.wang:8088/)
Powered by Discuz! X3