开发工具介绍.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

xlanchen@2006.5.18EmbeddedOperatingSystems*在编译时指定库文件指明将libtest.a链接进来运行结果xlanchen@2006.5.18EmbeddedOperatingSystems*nmnm的主要功能是列出目标文件中的符号,这样程序员就可以定位和分析执行程序和目标文件中的符号信息和它的属性xlanchen@2006.5.18EmbeddedOperatingSystems*nm显示的符号类型A:符号的值是绝对值,并且不会被将来的链接所改变B:符号位于未初始化数据部分(BSS段)C:符号是公共的。公共符号是未初始化的数据。在链接时,多个公共符号可能以相同的名字出现。如果符号在其他地方被定义,则该文件中的这个符号会被当作引用来处理D:符号位于已初始化的数据部分T:符号位于代码部分U:符号未被定义?:符号类型未知,或者目标文件格式特殊 xlanchen@2006.5.18EmbeddedOperatingSystems*nm使用举例如果对test可执行文件使用nm,会有什么结果呢?xlanchen@2006.5.18EmbeddedOperatingSystems*objcopy可以将一种格式的目标文件内容进行转换,并输出为另一种格式的目标文件。它使用GNUBFD(binaryformatdescription)库读/写目标文件,通过这个BFD库,objcopy能以一种不同于源目标文件的格式生成新的目标文件$objcopy-h在makefile里面用-Obinary选项来生成原始的二进制文件,即通常说的image文件xlanchen@2006.5.18EmbeddedOperatingSystems*Objcopy使用举例使用file命令查看文件类型生成srec格式的目标文件使用file命令查看新文件的类型xlanchen@2006.5.18EmbeddedOperatingSystems*文件格式a.out

assemblerandlinkeditoroutput

汇编器和链接编辑器的输出coff

commonobjectfileformat

一种通用的对象文件格式ELF

excutivelinkedfile

Linux系统所采用的一种通用文件格式,支持动态连接。ELF格式可以比COFF格式包含更多的调试信息xlanchen@2006.5.18EmbeddedOperatingSystems*文件格式Flat

elf格式有很大的文件头,flat文件对文件头和一些段信息做了简化

uClinux系统使用flat可执行文件格式SREC

MOTOROLAS-Recoder格式(S记录格式文件)等等xlanchen@2006.5.18EmbeddedOperatingSystems*objdump显示一个或多个目标文件的信息,由其选项来控制显示哪些信息。一般来说,objdump只对那些要编写编译工具的程序员有帮助,但是我们通过这个工具可以方便的查看执行文件或者库文件的信息xlanchen@2006.5.18EmbeddedOperatingSystems*Objdump使用举例(1)-f选项:显示文件头中的内容xlanchen@2006.5.18EmbeddedOperatingSystems*Objdump使用举例(2)-d选项进行反汇编xlanchen@2006.5.18EmbeddedOperatingSystems*readelfreadelf软件显示一个或多个ELF格式的目标文件信息。xlanchen@2006.5.18EmbeddedOperatingSystems*Readelf使用举例xlanchen@2006.5.18EmbeddedOperatingSystems*其他GNU工具Gdb—调试器GNUmake--软件工程工具diff,patch--补丁工具CVS--版本控制系统xlanchen@2006.5.18EmbeddedOperatingSystems*GNUToolchain—gdbGdb=GNUdebugerGNUtools中的调试器,功能强大设置断点监视、修改变量单步执行显示/修改寄存器的值堆栈查看远程调试xlanchen@2006.5.18EmbeddedOperatingSystems*gdb使用举例(1)源代码如下编译:g

您可能关注的文档

文档评论(0)

183****2083 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档