Linux下gdb使用整理记录

1.创建cpp文件:vim sourcefile.cpp

2.生成可执行文件:g++ -g sourcefile.cpp -o exename

------据说是要必须加上-g参数,否则不可调试

3.启动调试:输入gdb(滚蛋吧)进入gdb环境

4.输入 file exename   (告诉gdb要调试了)

5.输入 l (list)查看代码,回车重复上一条命令

6.断点设置:b main   在main函数入口加一个断点

-------break  5  :在第5行设置断点; i b  (info break) 查看断点信息

7.输入 r (run)开始运行代码到断点处

8.输入 s  (step)单步进入函数

9.可以输入 n:单步调试;输入print var (缩写:p var)可以查看变量bar的值

------查看堆栈bt,  down和up可一个一个打印堆栈信息。bt直接打印全部堆栈信息。

10.调试结束,输入c (continue) 运行到结束

-----或者 q  (quit)退出

问题:如果代码错了,不能生成可执行文件该如何??

时间: 2024-10-13 23:29:24

Linux下gdb使用整理记录的相关文章

Linux知识(5)----LINUX下GDB调试

参考资料: 1.LINUX下GDB调试

linux下MySQL5.6安装记录

MySQL下载地址: ftp://mirror.switch.ch/mirror/mysql/Downloads/MySQL-5.6/http://mirrors.sohu.com/mysql/ 1.查看服务器版本: [[email protected] ~]# cat /etc/redhat-releaseCentOS release 6.4 (Final) [[email protected] ~]# rpm -qa|grep mysql mysql-libs-5.1.66-2.el6_3.

Linux 下GDB的使用之简单入门

Linux 下程序崩溃.先要生成Core文件方可调试(这里Test为被调试程序) 1.查看Core文件(相当于Windows下的dump)大小,如果为0,则不会生成core文件 ulimit -c 查看core文件大小 ulimit -c filesize 设置大小为filesize ulimit -c unlimited 设置core大小为无限制 2.启动被调试程序 进入到被调试程序目录,输入gdb ./Test  回车 如果被调试程序有参数需设置,则 set args xxxx 回车 3.设

Linux下gdb调试

关于gdb的其他客套话不多说,直接进入正题. 一.gdb基本命令列表: 命令 解释 简写 file 装入想要调试的可执行文件 无 list 列出产生执行文件源代码的一部分 l next 执行一行源代码但不进入函数内部 n step 执行一行源代码而且进入函数内部 s run 执行当前被调试的程序 r continue 继续执行程序 c quit 终止gdb q print 输出当前指定变量的值 p break 在代码里设置断点 b info break 查看设置断点的信息 ib delete 删

linux下监控用户操作记录的工具

linux下监控用户操作记录的工具: apt-get install bsdutils mkdir /opt/operation_log chmod 777 -R /opt/operation_log vi /etc/profile exec script -t 2> /opt/operation_log/$USER-$UID-date +%F-%T.data -a -q -f /opt/operation_log/$USER-$UID-date +%F-%T.log :wq source /e

Linux下gdb调试工具的使用

gdb是GNU开源组织发布的一个强大的Linux下的程序调试工具. gdb主要完成四个方面的功能:(1).启动你的程序,可以按照你的自定义的要求随心所欲的运行程序:(2).可让被调试的程序在你所指定的调试的断点处停住(断点可以是条件表达式):(3).当程序被停住时,可以检查此时你的程序中所发生的事:(4).动态的改变你程序的执行环境. 要想运行准备调试的程序,可使用run命令,在它后面可以跟随发给该程序的任何参数,包括标准输入和标准输出说明符(<;和>;)和shell通配符(*.?.[.])在

linux下使用indent整理代码

indent是linux下一个能力极强的代码整理软件,使用它可以轻松的写出风格十分精良的代码.查看/usr/src/linux-headers-<版本>/scripts/Lindent文件 ,可以看到一行代码: indent -npro -kr -i8 -ts8 -sob -l80 -ss -ncs -cp1 这一行就是linux内核使用indent整理代码的格式,使用这条命令就可以实现风格十分良好的C或C++代码.其中-l80是每一行最多80个字母,超出会拆行,如果不喜欢可以使用更长的行字数

Linux下的快捷键整理

2019-10-26      00:37:25 今天上网整理了相关资料,希望对大家有用: 1.关于终端的快捷键:  Tab:tab键是比较常用的一个快捷键,它的作用是补全文件名或者路径.举例来说,输入”cd /ho”在按一下tab键,终端里就会显示”cd /home”了.如果您的文件夹下,有两个名字开头部分相同的文件,比如有”picture001.bmp”和”picture002.bmp”两个文 件,输入”rm pic”以后按下tab键,就会补全成”rm picture”,您可以接着输入剩下的

LINUX下GDB反汇编和调试

Linux下的汇编与Windows汇编最大的不同就是第一个操作数是原操作数,第二个是目的操作数.而Windows下却是相反. 1. 基本操作指令 简单的操作数类型说明.一般有三种. (1)马上数操作数,也就是常数值.马上数的书写方式是"$"后面跟一个整数.比方$0x1F.这个会在后面的详细分析中见到非常多. (2)寄存器操作数,它表示某个寄存器的内容.用符号Ea来表示随意寄存器a,用引用R[Ea]来表示它的值.这是将寄存器集合看成一个数组R,用寄存器表示符作为索引. (3)操作数是存储