成都网站建设设计

将想法与焦点和您一起共享

linux中gdb命令 linux gdi+

linux入门基础(四)Gdb调试程序

Gdb调试

成都创新互联,为您提供网站建设公司网站制作、网站营销推广、网站开发设计,对服务成都混凝土泵车等多个行业拥有丰富的网站建设及推广经验。成都创新互联网站建设公司成立于2013年,提供专业网站制作报价服务,我们深知市场的竞争激烈,认真对待每位客户,为客户提供赏心悦目的作品。 与客户共同发展进步,是我们永远的责任!

注意:在Gcc编译选项中一定要加入

–g

退出GDB:quit

Ctrl+d

调试过程:

1.

查看文件

命令:

(gdb)

l

命令:(gdb)

b

行号

注:到第17行停止,并没有执行17行

3.

查看断点情况

info

b

4.

运行代码

r

命令:

(gdb)

r

(也可以指定行开始运行,在r后面加上行号)

5.

查看变量值

p

命令:(gdb)

p

变量名

6.

设置监视点:

watch

z

(变量名)

也可以是复杂的表达式

7.

单步运行

命令:(gdb)

n

(逐过程)

8.逐步,会进入函数

命令:(gdb)

s

9.条件断点

将正常断点转变为条件断点:condition

如:condition

1

i

==

10

只有当满足条件i

==

1时,才会在断点1处暂停

10.

恢复程序运行

c

命令:

(gdb)

c

(程序就会运行,如果没有断点,就运行剩下部分,如果有断点,就会运行到下一个断点)

11.

去除断点

clear

line_number

clear

filename:line_number

12.

help

12.1

help找出类别

12.2help从列表中

linux下的gdb是个命令,但在linux常用命令列表中找不到?

首先,一般的命令其实也都是程序

装在系统路径下的程序的程序名,都可以作为命令直接调用

具体哪些路径是“系统路径”,Linux下可以用$PATH$命令来查看(通常会有多个路径,用冒号隔开)

而gdb其实是gcc/g++编译器的一个附带的调试器

虽然现在主流的Linux发行版中都会自带gcc编译器,当然也会附带这个gdb的调试器

但毕竟它不算是Linux系统的内部组件,所以自然也不能算做Linux的自带命令了

Linux 里面的gdb到底是个什么东西?

分类: 电脑/网络 操作系统/系统故障

问题描述:

第一次在Linux上工作,要用到一个什么gdb的东东。gdb到底是什么呢,各位老大?

解析:

Linux 包含了一个叫 gdb 的 GNU 调试程序. gdb 是一个用来调试 C 和 C++ 程序的强力调试器. 它使你能在程序运行时观察程序的内部结构和内存的使用情况. 以下是 gdb 所提供的一些功能:

它使你能监视你程序中变量的值.

它使你能设置断点以使程序在指定的代码行上停止执行.

它使你能一行行的执行你的代码.

在命令行上键入 gdb 并按回车键就可以运行 gdb 了, 如果一切正常的话, gdb 将被启动并且你将在屏幕上看到类似的内容:

GDB is free sofare and you are wele to distribute copies of it

under certain conditions; type "show copying" to see the conditions.

There is absolutely no warranty for GDB; type "show warranty" for details.

GDB 4.14 (i486-slakware-linux), Copyright 1995 Free Sofare Foundation, Inc.

(gdb)

当你启动 gdb 后, 你能在命令行上指定很多的选项. 你也可以以下面的方式来运行 gdb :

gdb fname

当你用这种方式运行 gdb , 你能直接指定想要调试的程序. 这将告诉gdb 装入名为 fname 的可执行文件. 你也可以用 gdb 去检查一个因程序异常终止而产生的 core 文件, 或者与一个正在运行的程序相连. 你可以参考 gdb 指南页或在命令行上键入 gdb -h 得到一个有关这些选项的说明的简单列表.


标题名称:linux中gdb命令 linux gdi+
当前链接:http://chengdu.cdxwcx.cn/article/ddjsgog.html