linux 程序调试

1. core文件

     有些程序crash后会保存一个core文件,包含crash时的一些信息,有助于调试

     首先需要打开core机制,否则不会保存core文件

     ulimit -a  #查看限制

     ulimit -c  ulimited #不限制core文件大小,此时就会保存core文件了

     有了core文件后,利用gdb可以查看信息,命令如下

     gdb ./demo ./core.122

     其中demo是crash的程序,core.123是保存的core文件, demo需要是debug版本的,gdb才可能从中加载符号表

     进入gdb之后,输入bt或where即可看到crash时的堆栈状态


2. gdb调试中的layout src可以弹出一个文本框显示源码,很有效,ctrl-x a推出layout

    layout窗口后,上下键被用来浏览代码,不知道如何选上一条/下一条命令

    search regex: 向后搜索字符串regex

     rev regex: 向前搜索字符串regex


3. valgrind

     valgrind  --tool=memcheck --leak-check=full ./demo pic.jpg

   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值