如何将GDB发挥到极致?

更新于
2026-09-23 03:55:12
25阅读来源:SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1237个文字,预计阅读时间需要5分钟。

如何将GDB发挥到极致?

“0.+ 前言 GDB(GNU Debugger)是UNIX及UNIX-like系统下的强大调试工具,支持调试ada、c、c++、asm、minimal、d、fortran、objective-c、go、java、pascal等多种语言。本文以C程序为例,介绍GDB启动调试的多种方式。1. 哪类程序“





0. 前言

GDB(GNU Debugger)是UNIX及UNIX-like下的强大调试工具,可以调试ada, c, c++, asm, minimal, d, fortran, objective-c, go, java,pascal等语言。本文以C程序为例,介绍GDB启动调试的多种方式。

1.哪类程序可被调试

对于C程序来说,需要在编译时加上-g参数,保留调试信息,否则不能使用GDB进行调试。
但如果不是自己编译的程序,并不知道是否带有-g参数,如何判断一个文件是否带有调试信息呢?

1.1gdb 文件

例如:

$ gdb helloworld
Reading symbols from helloWorld...(no debugging symbols found)...done.

如果没有调试信息,会提示:​​no debugging symbols found。​​ 如果是下面的提示:

Reading symbols from helloWorld...done.

则可以进行调试。

阅读全文

本文共计1237个文字,预计阅读时间需要5分钟。

如何将GDB发挥到极致?

“0.+ 前言 GDB(GNU Debugger)是UNIX及UNIX-like系统下的强大调试工具,支持调试ada、c、c++、asm、minimal、d、fortran、objective-c、go、java、pascal等多种语言。本文以C程序为例,介绍GDB启动调试的多种方式。1. 哪类程序“





0. 前言

GDB(GNU Debugger)是UNIX及UNIX-like下的强大调试工具,可以调试ada, c, c++, asm, minimal, d, fortran, objective-c, go, java,pascal等语言。本文以C程序为例,介绍GDB启动调试的多种方式。

1.哪类程序可被调试

对于C程序来说,需要在编译时加上-g参数,保留调试信息,否则不能使用GDB进行调试。
但如果不是自己编译的程序,并不知道是否带有-g参数,如何判断一个文件是否带有调试信息呢?

1.1gdb 文件

例如:

$ gdb helloworld
Reading symbols from helloWorld...(no debugging symbols found)...done.

如果没有调试信息,会提示:​​no debugging symbols found。​​ 如果是下面的提示:

Reading symbols from helloWorld...done.

则可以进行调试。

阅读全文