计算机网络30——Linux-gdb调试命令&makefile

1、开始调试

编译时带-g为调试,带调试信息编译后的可执行文件更大

2、进入调试

使用gdb 可执行文件名------进入调试

失败版:

成功版:

3、l命令

l什么都不加------列出10行代码

l 行号------行号的行在中间,向上向下展示10行

4、start

开始调试,断点默认停在main函数第一行

5、下一步调试

逐过程:next,如果调用其他函数,也不进入,直接进入下一条语句

逐语句:step,遇见函数进入

6、打印变量值

p 变量名

display 变量名------持续打印变量值

结束监控:undisplay 变量号

7、结束调试

8、重新开始

9、下断点

b 行号

10、run

停在第一个断点处,开始调试

11、查看所有断点信息

12、继续

continue 继续到下一个断点处

13、禁用断点和重新使用


1、makefile

2、测试makefile文件(1)

(1)准备一个main文件

(2)写makefile文件

version是版本号

myapp是要生成的可执行文件的名字,main.c是依赖文件的名字

下面是和外面一样的编译命令

如果没有修改,不会重新编译

3、测试文件(2)

makefile文件

在已经生成后,修改一个文件,重新执行时只会重新编译修改的文件,其余不会变

4、执行原理和注意事项

解决路径中空格的问题,写脚本时,不要留空格

相关推荐
博语小屋15 分钟前
进程查看
linux
Sadsvit24 分钟前
Linux Vim 编辑器使用指南
linux·编辑器·vim
IT摆渡者27 分钟前
Wireshark攻防实战
linux·服务器·经验分享·笔记
木宇(记得热爱生活)33 分钟前
Ubuntu卡在启动画面:显卡驱动与密码重置
linux·运维·ubuntu
LCY13338 分钟前
Linux系统部署k8s集群
linux·运维·kubernetes
勤匠1 小时前
CentOS 7部署Redis
linux·redis·centos
南玖yy2 小时前
C++多态:面向对象编程的灵魂之
运维·开发语言·数据库·c++·后端·c·c语音
Channing Lewis2 小时前
zoho crm为什么xx是deal的关联对象但是调用函数时报错说不是关联对象
运维·服务器·windows
浅夏入秋^_^2 小时前
网络安全运维面试准备
运维·安全·web安全
段嘉许OvO2 小时前
Red靶机攻略
linux·运维·服务器