假设nginx装在了/usr/local/nginx/
./nginx -c conf/nginx.conf
在任意目录
gdb -d /usr/local/nginx/objs/ nginx 10776
或者gdb -d /usr/local/nginx/objs/ nginx
进入后再attach 10777
(gdb) info program
Using the running image of attached Thread 0x2af36f21d520 (LWP 10776).
Program stopped at 0x6e23079a.
(gdb) show env
(gdb) show paths
(gdb)info terminal
(gdb)pwd
在gdb中,我们可以有以下几种暂停方式:断点(BreakPoint)、观
察点(Watch Point)、捕捉点(Catch Point)、信号(Signals)、
线程停止(Thread Stops)。如果要恢复程序运行,可以使用c或是
continue命令
---------------
ps -ef|grep nginx
gcore 5518
生成core文件
[root@red54apple 0921]# pstack 5518
#0 0x0000003b6e23079a in sigsuspend () from /lib64/libc.so.6
#1 0x000000000042d5bd in ngx_master_process_cycle ()
#2 0x00000000004031c7 in main ()
[root@red54apple 0921]#
gdb /usr/local/nginx/objs/nginx ./core.5518
(gdb) search ngx_master_process_cycle
(gdb) b ngx_master_process_cycle
(gdb)bt
(gdb)frame
参考http://www.yuanma.org/data/2009/0407/article_3605.htm
(gdb)help all
-----------------
commands
(gdb) b 19
Breakpoint 2 at 0x4004e9: file tst.c, line 19.
(gdb) commands
Type commands for when breakpoint 2 is hit, one per line.
End with a line saying just "end".
>printf "haha"
>end
(gdb) r
Starting program: /root/gdbtest/0919/tst
Breakpoint 2, main () at tst.c:19
19 result += i;
haha(gdb)
(gdb)
info args
打印出当前函数的参数名及其值。
info locals
打印出当前函数中所有局部变量及其值。
info catch
打印出当前的函数中的异常处理信息。
forward-search <regexp>
search <regexp>
向前面搜索。
reverse-search <regexp>
分享到:
相关推荐
STM32 GDB 调试手册 本手册详细介绍了如何使用 GDB 调试 STM32 微控制器,旨在帮助开发者快速掌握 GDB 调试工具的使用方法,以便更好地 debug STM32 项目。 标题解释 STM32 GDB 调试手册是 STM 官方提供的调试指南...
GDB调试手册是一份非常适合初学者的中文资源,它详尽地介绍了如何使用GDB这一强大的开源调试工具。GDB,全称GNU调试器,是Linux和其他类Unix系统下用于调试C、C++、Objective-C、Fortran等语言编写的程序的工具。...
在IT行业中,调试是软件开发过程中的重要环节,特别是在Linux环境下,GDB(GNU Debugger)作为一款强大的命令行调试工具,被广泛应用于C/C++等语言的程序调试。本篇文章将详细阐述GDB的使用方法及其核心功能,帮助你...
《GDB调试程序[陈皓]》与《GDB调试工具指南》这两份PDF文档,是深入了解和精通GDB(GNU Debugger)这一强大调试工具的重要参考资料。GDB是开源世界中广泛使用的C、C++以及其他多种语言的调试器,它允许开发者在运行...
GDB(GNU Debugger)是一款强大的源代码级调试器,广泛应用于Linux和其他Unix-like操作系统中,用于调试C、C++以及其他支持的编程语言编译出的程序。在这个场景中,我们将聚焦于如何使用GDB来调试基于ARM AArch64...
GDB(GNU Debugger)是一个在UNIX及UNIX-like操作系统下运行的强大的程序调试工具。GDB能够调试多种编程语言编写的程序,包括但不限于Ada、C、C++、汇编、D、Fortran、Objective-C、Go、Java、Pascal等。在介绍GDB...
Linux 调试工具 GDB 简明指南 GDB(GNU Debugger)是 Linux 系统中的一款强大调试工具,用于调试 C 和 C++ 程序。它使用户可以在程序运行时观察程序的内部结构和内存的使用情况。GDB 提供了多种功能,如监视程序中...
GDB 调试程序 GDB 是一个强大的命令行调试工具,主要帮忙用户完成四个方面的功能:启动程序、设置断点、检查程序状态和动态改变程序执行环境。GDB 的强大之处在于其可以形成执行序列,形成脚本,非常容易集成在一起...
"GDB调试--以汇编语言为例" 本文将详细介绍如何使用GDB调试汇编语言程序,包括使用CPUID指令来获取CPU信息,并使用GDB调试器来调试汇编语言程序。 一、CPUID指令 CPUID指令是Intel Pentium级别以上CPU中的一个...
GDB调试精粹及使用实例GDB调试精粹及使用实例GDB调试精粹及使用实例GDB调试精粹及使用实例GDB调试精粹及使用实例GDB调试精粹及使用实例GDB调试精粹及使用实例GDB调试精粹及使用实例GDB调试精粹及使用实例GDB调试精粹...
gdb调试详解 GDB(GNU Debugger)是一款功能强大的调试工具,广泛应用于Linux平台。通过GDB,可以轻松地调试程序,检查程序崩溃后的核心转储文件(Core Dump),从而帮助开发者快速定位和解决问题。 GDB基础命令 ...
### Linux下gdb调试工具指南:深入解析与实践 #### 引言 在软件开发领域,尤其是对于系统级编程和复杂应用的维护,一个高效、功能全面的调试工具是不可或缺的。GNU调试器(GDB)正是这样一款强大的调试工具,它...
**知识点详解:GDB调试工具入门与进阶** 在IT行业,尤其是软件开发领域,调试是确保代码质量、提升程序稳定性的重要环节。GDB(GNU Debugger)作为一款强大的开源源码级调试器,在Linux和Unix系统中占据着举足轻重...
**GDB调试原理** GDB,全称GNU Debugger,是一个强大的源代码级调试工具,用于检查和调试C、C++等编程语言编写的程序。它的主要功能在于帮助开发者找到并修复程序中的错误(bug),以及深入理解程序的执行流程和...
### GDB调试详解 #### GDB概述 GDB(GNU Debugger)是一款由GNU项目开发的开源调试工具,专为UNIX及类UNIX系统设计。对于在UNIX环境下进行软件开发的工程师而言,GDB提供了超越图形界面调试器的强大功能,如Visual...
嵌入式Linux GDB调试技术 嵌入式Linux GDB调试技术是指在嵌入式系统中使用GDB调试程序的一种技术。GDB(GNU Debugger)是一种功能强大且灵活的调试器,可以在各种平台上使用。嵌入式Linux GDB调试技术的主要目的是...
GDB 调试中文手册 GDB(GNU Debugger)是一款功能强大且广泛使用的 UNIX 下的程序调试工具。它提供了多种功能,包括启动程序、设置断点、观察点和捕捉点、维护停止点、停止条件维护、为停止点设定运行命令、恢复...
在Linux开发环境中,GDB(GNU调试器)是进行源码级调试的重要工具,尤其适用于C/C++语言编程。其全称为"The gnu Source-Level Debugger",是GNU项目的一部分。随着版本*.*.*.**的发布,GDB不仅保持了其作为源码级...