golang 生成gdb 调试文件 以及gdb命令

使用生成可供gdb 调试的二进制文件

go build -o test -gcflags "-N -l" file.go

使用gdb test 即可进入调试模式 下面是gdb的命令 可以根据自己的需要运行对应的命令

start                         //开始调试
n                             //一条一条执行
step/s                        //执行下一条,如果函数进入函数
backtrace/bt                  //查看函数调用栈帧
info/i locals                 //查看当前栈帧局部变量
frame/f                       //选择栈帧,再查看局部变量
print/p                       //打印变量的值
finish                        //运行到当前函数返回
set var sum=0                 //修改变量值
list/l 行号或函数名             //列出源码
display/undisplay sum         //每次停下显示变量的值/取消跟踪
break/b  行号或函数名           //设置断点
continue/c                    //连续运行
info/i breakpoints            //查看已经设置的断点
delete breakpoints 2          //删除某个断点
disable/enable breakpoints 3  //禁用/启用某个断点
break 9 if sum != 0           //满足条件才激活断点
run/r                         //重新从程序开头连续执行
watch input[4]                //设置观察点
info/i watchpoints            //查看设置的观察点
x/7b input                    //打印存储器内容,b--每个字节一组,7--7组
disassemble                   //反汇编当前函数或指定函数
si                            // 一条指令一条指令调试 而 s 是一行一行代码
info registers                // 显示所有寄存器的当前值
x/20 $esp                    //查看内存中开始的20个数

猜你喜欢

转载自blog.csdn.net/liangguangchuan/article/details/79398604