这是因为编译.o文件时没有一起生成调试信息,应该在makefile中的编译命令中制定-g参数,如下: 1 sort:main.o bubble.o 2 gcc -o sort main.o bubble.o 3 4 main.o:main.c bubble.h 5 gcc -g -c main.c ...
分类:
数据库 时间:
2018-06-30 21:24:00
阅读次数:
440
第一步:首先需要一个进程的coredump文件,怎么搞出coredump文件呢? 1、 ps -fax|grep 进程名称 找到进程的pid2、gdb -p pid 调试进程3、gcore coredump名称 则生成core文件第二步:找出coredump文件的应用程序1、gdb -c coref ...
分类:
数据库 时间:
2018-06-28 00:58:18
阅读次数:
177
前期准备 启动GDB方法 设置运行参数 查看源码 断点break 使用 运行程序 查看运行时数据 查看内存数据 分割窗口 问题汇总 参考文献 GDB, The GNU Project debugger, allows you to see what is going on inside anothe ...
分类:
数据库 时间:
2018-06-22 15:27:09
阅读次数:
260
使用方法: You can use the commands dump, append, and restore to copy data between target memory and a file. The dump and append commands write data to a f ...
分类:
数据库 时间:
2018-06-21 17:31:19
阅读次数:
232
gdb常用命令 最近在研究nginx源码,gdb用于调试非常方便,之前这篇有研究过如何使用gdb调试nginx:https://www.cnblogs.com/yjf512/archive/2012/05/10/2494635.html 最近使用的时候gdb的命令又忘记了。这里复习一下。 这里有很全 ...
分类:
数据库 时间:
2018-06-20 19:08:20
阅读次数:
199
编译Go语言程序的时候,传递-gcflags"-N-l"参数,这样可以忽略Go语言内部做的一些优化,聚合变量和函数等优化gobuild-gcflags"-N-l"常用命令list显示源码,默认显示10行,例如list15,显示十行代码,其中第15行在显示的十行里边的中间break设置断点,后面可以跟代码行号或者函数名delete删除断点,后面跟上断点设置的序
分类:
数据库 时间:
2018-06-18 12:47:30
阅读次数:
282
CentOS7上搭建httpbin环境 1、安装python31)安装python3.6可能使用的依赖yum -y install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel 2)到pyth ...
分类:
Web程序 时间:
2018-06-17 15:16:17
阅读次数:
501
gdb是linux下非常好用的一个调试工具,虽然它是命令行模式的调试工具,但是它的功能强大到你无法想象,这里简单介绍下gdb下常用的命令。 首先编译生成可执行文件(这里的test.c是一个简单的求前n项和的程序)。 gcc -g test.c -o test(-g选项告诉gcc在编译程序时加入调试信 ...
分类:
数据库 时间:
2018-06-16 12:01:04
阅读次数:
244
1. 利用 gdb 调试 1.1 绑定 Nginx 到 gdb 1. 利用 gdb 调试 Nginx,首先得在生成 Nginx 程序时把 g 编译选项打开。 2. 其次注意编译选项 O0,如果在 gdb 内打印变量时提示 "" 或 gdb 显示的当前正执行的代码行与源码匹配不上,则可能是因为 gcc ...
分类:
其他好文 时间:
2018-06-16 10:31:17
阅读次数:
226
1. dl debug.c:74: No such file or directory. 如上图,当使用 gdb 调试执行 r 时,会出现如上打印。 解决方法如下: 1. : 获取源文件,此时,该 "glibc source" 还不是一个有效的包. 2. 在 /usr/src 或 /usr/src/ ...
分类:
数据库 时间:
2018-06-15 22:41:51
阅读次数:
235