嵌入式技术学习笔记(四)

调试器:gdb
1、gdb隶属于GNU计划。内核调试使用KGDB
2、程序错误分为两大类:(1)编译时错误,实际上是语法错误(2)运行时错误,实际上是内存错误或者是逻辑错误。
3、gdb功能:(1)运行程序(2)设置断点(3)查看变量的值
4、如何使用gdb:gcc -g hello.c -o hello 然后使用gdb hello来使用gdb
5、gdb具体命令简单介绍
gdb --tui:进入gdb图形界面
layout asm:显示汇编窗口
layout src:显示源代码窗口
layout split:显示源代码和汇编窗口

run:开始运行
finish:结束运行
continue:结束当前断点,继续运行,直到下一个断点

break加行号:在行号处设置断点
break加函数名:在函数名处设置断点
break加行号加if条件:在条件处设置断点
info break:列出所有断点信息
delete加断点编号:删除断点
enable加断点编号:使断点生效
disable加断点编号:使断点失效

单步执行(在设置断点之后)
step可以进入子函数
next不可以进入子函数
但两者都可单步执行程序

工程管理器:make
1、工程管理器:编译很多个文件组成的软件代码结构,这些文件可能类型不同,存放在不同的目录,资源文件使用不同。如果有多个.c文件存在的话,要想编译它们会十分麻烦,而使用make就能实现自动编译这些.c文件。
自动编译:(1)根据makefile文件内容进行自动编译(2)根据文件的时间戳来判断文件是否需要编译。
makefile是一个脚本文件,是做批处理使用的
makefile的语法:目标,依赖,命令 结构如下:
目标然后输入:,冒号后面是依赖,按下tab后再输入命令
执行这个命令,依赖这个文件,最终生成这个目标。
makefile执行顺序:自上向下,当你的目标依赖文件又是有一个目标时,会先跳转到该目标去执行相关命令
make +目标名:从该目标开始自上向下执行。
makefile伪目标:只执行命令,不生成对应文件 使用.PHONY:加文件名来生成伪目标

功能目录管理软件代码:
makefile:
总控Makefile,进入各个功能目录执行make,并将所有.o文件链接生成可执行文件
功能目录Makefile,把功能目录下的源文件编译生成目标文件.o
scripts目录头文件Makefile,定义变量,供其他makefile使用
阅读makefile的顺序:(1)scripts目录头文件Makefile(2)总控Makefile(3)功能目录Makefile

发布了14 篇原创文章 · 获赞 1 · 访问量 477

猜你喜欢

转载自blog.csdn.net/a1152946932/article/details/104920439