GDB常用调试方式

使用gdb调试之前,首先要利用gcc/g++生成可利用GDB调试的文件,然后在进行调试。

1.gcc/g++ 调试

    常采用的方式为gcc /g++  -g  -Wall  xx.c/cpp  -o  xx

其中gcc/g++根据不同的编译文件选择编译工具,-g表示编译器在编译的时候产生调试信息,-Wall表示生成所有警告信息,xx.c/cpp表示用于编译的源文件,-o 表示指定输出文件的文件名,xx表示生成的可执行文件。

2. gdb调试

(1)启动gdb的方法:

gdb <program>
 
也可以直接进入gdb调试界面,再用help来查看相关指令。
在写具体指令时可以用第一个字母,或者用tab键补齐

gdbb(break) func 或者 b(break) 4  在对应函数或行数处设置断点。
gdbclear linenumber 删除指定行的断点
gdbq  quit 退出gdb
gdbrun 运行代码
gdbinfo break 查看断点信息
gdbn next 单条语句执行
gdbs 步入函数
gdbc 继续运行程序,continue命令简写
gdbp print xx 打印变量xx的值
gdbdisplay xx  显示xx值  将会一直显示用来监听
gdbbt  查看函数堆栈
gdbfinish  退出函数
gdbinfo threads  显示当前线程

(2) cmake-gdb
如果用使用cmake-gdb,则需要在cmake中添加一下代码。
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") 

add_executable(XX  XX/X)

从而可直接使用gdb <program>进行程序调试

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值