GDB not GDP简单介绍

美股熔断已成家常便饭,在这个时候写点教程慰藉一下凉凉的心灵


人生如果没有梦想和咸鱼又有什么区别

先隨便建文件夹,建立一个c文件,随便写点垃圾代码

mkdir c++_practice
cd  c++_practice
touch  test.c
vim test.c

然后愉快的输入下面的代码



开始编译

gcc test.c -o test

此时并没有报错
这个时候选择执行一下

./test

发现报错了,这个时候就该gdb登场了

  • 首先你需要安装一下
sudo apt-get install gdb
  • 安装完之后需要使用命令ulimit
ulimit -a

修改 core file size,系统默认大小为不保存

ulimit -c 204800

删除掉core,重新执行./test

rm core
./test

使用gdb 对其进行调试
gdb + 可执行文件 + core文件

gdb test core

告诉在哪个函数出错了

  • 如果有源码的话重新进行编译,把调试的信息带进来
gcc test.c -o test -g

显示str[1]='H';报错

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 什么是coredump Coredump叫做核心转储,它是进程运行时在突然崩溃的那一刻的一个内存快照。操作系统在程...
    java菜阅读 9,705评论 0 4
  • 调试前准备 获取进程的内核转储(core dump) why:最大好处是,其保存了问题发生时的状态。记录进程当前状...
    Gitlusen阅读 4,483评论 0 2
  • cut命令选取文本列 -b 只选择指定的字节-c 只选择指定的字符-d 自定义列分隔符,默认为制表符-f 只选择指...
    p_gerer阅读 3,297评论 0 0
  • 这个星期,老师给我们布置了一项特殊的作业,表达对爸爸或妈妈的爱,这还不是so easy!于是我打算在中秋节,今天表...
    四叶草的泪水阅读 2,312评论 0 3
  • 昨天晚上今天晚上,两个晚上的时间看完了阿凡达,电影中潘多拉的美景太让人神往了,当杰克向灵魂树圣母请求帮助的时候,纳...
    王桂荣2019阅读 861评论 0 1