哈工大嵌入式操作系统课件—7 Linux开发环境2-gcc gdb.ppt

哈工大嵌入式操作系统课件—7 Linux开发环境2-gcc gdb.ppt

ID:51498049

大小:671.00 KB

页数:39页

时间:2020-03-25

哈工大嵌入式操作系统课件—7 Linux开发环境2-gcc gdb.ppt_第1页
哈工大嵌入式操作系统课件—7 Linux开发环境2-gcc gdb.ppt_第2页
哈工大嵌入式操作系统课件—7 Linux开发环境2-gcc gdb.ppt_第3页
哈工大嵌入式操作系统课件—7 Linux开发环境2-gcc gdb.ppt_第4页
哈工大嵌入式操作系统课件—7 Linux开发环境2-gcc gdb.ppt_第5页
资源描述:

《哈工大嵌入式操作系统课件—7 Linux开发环境2-gcc gdb.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、Agenda嵌入式软件开发环境概述GCCGDBASimpleExampleMAKE嵌入式软件开发模型嵌入式系统的一个特点在于其开发的特殊性与困难性。开发机器!=执行机器开发环境!=执行环境专门的开发环境与开发工具-VxWorks系统配套的Tornado集成开发工具-Linux系统配套的gcc,gdb等开发工具嵌入式软件开发环境嵌入式软件开发环境宿主机开发机器(编辑器、编译器、调试器、….)负责程序的编译和部分调试工作。目标机程序运行的机器,负责程序的运行和部分调试工作。交叉编译是指宿主机和目标机是不同的系统嵌入式

2、软件开发环境Agenda嵌入式软件开发环境概述GCCGDBASimpleExampleMAKEGCCLinux下的编译器–GNU项目的C编译器四个步骤-预处理preprocessing-编译compilation-汇编assembly-连接linkingGCCGCC-gProduceDebugInformation-WallWarningindetail-EPreprocessonly;donotcompile,assembleorlink-SCompileonly;donotassembleorlink-cCo

3、mpileandassemble.Butdonotlink-oPlacetheoutputintoGCCGCC的组件名称功能描述cppC预处理器g++C++编译器gccC编译器gccbug创建bug报告的shell脚本gcov覆盖测试工具,分析如何最好的优化程序libgccgcc的运行库libstdc++标准C++库,包含许多常用的函数libsupc++提供支持C++语音的库函数Agenda嵌入式软件开发环境概述GCCGDBASimpleExampleMAKEGDBLinux下软件调试工具

4、远端调试-通过串口或网口调试目标设备-target命令:指定调试目标和建立连接的GDB命令GDBGDBGDB常用命令Agenda嵌入式软件开发环境概述GCCGDBASimpleExampleMAKEASimpleExample–Hello.cASimpleExample-CompilationASimpleExample-DebuggingAgenda嵌入式软件开发环境概述GCCGDBASimpleExampleMAKEMakeThemakeutilityautomaticallydetermineswhichp

5、iecesofalargeprogramneedtoberecompiled,andissuescommandstorecompilethem.-《AProgramforDirectingRecompilationGNU》Make是一个自动化的工具。根据依赖关系自动决定项目的那些部分需要重新编译。基本原理:如果某个源程序文件被修改,那么依赖这个源程序文件的所有目标文件,都需要重新编译。依赖关系MakefileMakefile文件控制make程序的执行一个项目拥有一个或多个makefile文件每个makefile文

6、件由多条rules构成每条rule描述了一个依赖关系,并有一系列的行为MakefileRuleRule的格式为:target…:prerequisites…command……Target依赖prerequisites的目标Prerequisites被依赖的源程序,例如c文件或h文件Command需要执行的命令当prerequisites任何一个文件的时戳新于target的时戳时,就执行command。ASimpleMakefileASimpleMakefile编译edit项目$make删除edit项目中的目标文件

7、$makecleanclean是一个伪目标clean没有任何prerequisites,只有显式的makeclean才能执行clean目标的commandALittleMorePracticalMakefileMoreAbstractMoreAbstractSUFFIXESThe‘SUFFIXES’thingtells‘make’thatfilesthatarepossibletargets,fallunderthreecategories:filesthatendin‘.c’,filesthatendin‘.o

8、’andfilesthatendinnothing..c.o$(CC)$(CFLAG)–c$

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。