arm-linux-参数总结

arm-linux-参数总结

ID:24413891

大小:82.00 KB

页数:3页

时间:2018-11-14

arm-linux-参数总结_第1页
arm-linux-参数总结_第2页
arm-linux-参数总结_第3页
资源描述:

《arm-linux-参数总结》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、arm-linux-gcc/ld/objcopy/objdump参数总结arm-linux-gcc-wall-02-c-o$@$<-o只激活预处理,编译,和汇编,也就是他只把程序做成obj文件-Wall指定产生全部的警告信息-02编译器对程序提供的编译优化选项,在编译的时候使用该选项,可以使生成的执行文件的执行效率提高-c表示只要求编译器进行编译,而不要进行链接,生成以源文件的文件名命名但把其后缀由.c或.cc变成.0的目标文件-S只激活预处理和编译,就是指把文件编译成为汇编代码arm-linux-ld直接指定代码段,数据段,BSS段

2、的起始地址■Tteststartaddr-Tdatastartaddr-Tbssstartaddr示例:Arm-linux-ld-Ttext0x0000000-gled.o-oled_elf使用连接脚本设置地址:Arm-linux-ld-Ttimer.lds-otimer_elf其中timer.lds为连接脚本完整的连接脚本格式:SECTIONS!SecnamestartALING(aling)(NOLOAD):AT(ldaddr){contents}>region:phdr=fill}arm-linux-objcopy被用来复制一个

3、目标文件的内容到另一个文件中,可用于不同源文件的之间的格式转换示例:Arm-linux-objcopy-obinary-Self_filebin_file常用的选项:__input-file,outflie输入和输出文件,如果没有outfile,则输出文件名为输入文件名2.-1bfdname或一input-target=bfdname用来指明源文件的格式,bfdname是BFD库中描述的标准格式名,如果没指明,则arm-linux-objcopy自己分析3.-0bfdname命出6格式4.-Fbfdname同时指明源文件,目的文件的格

4、式5.-Rsectionname从输出文件中删除掉所有名为sectionname的段6.-S不从源文件中复制重定位信息和符号信息到目标文件中7.-g不从源文件中复制调试符号到目标文件中arm-linux-objdump查看目标文件(.o文件)和库文件(.a文件)信息arm-linux-objdump-D-marmled_elf>led.dis-D显示文件中所有汇编信息-mmachine指定反汇编目标文件时使用的架构,当待反汇编文件本身没有描述架构信息的时候(比如S-records),这个选项很有用。可以用-i选项列出这里能够指定的架构

5、.常用选项:1.-bbfdname指定目标码格式2.一disassemble或者_d反汇编可执行段3.一dissassemble-all或者-D反汇编所有段4.-EB,-EL指定字节序5.—file-headers或者-f显示文件的整体头部摘要信息6.—section-headers,—headers或者显示目标文件中各个段的头部摘要信息7.—info或者-I显示支持的目标$件格式和CPU架构8.一section=name或者-jname显示指定section的信息9.一architecture=machine或者nmachine指定

6、反汇编目标文件时使用的架构1.修改源代码的顶层MakefileCC=$(CROSSCOM_PTLR)gcc—>CC=$(CROSSCOM_PILE)gcc-g使成生的vmlinux中含有debug信息2.所有生成.o的rule中再加一条CC-E-dD-C$<>/preprocessing/$(shellpwd)/$<生成预处理文件从这个文件里面能很容易找到c源文件的宏定义3.objdump-hvmlinux>vmlinux.txt显示linux内核段信息,如段的开始虚拟地址,段的长度4.objdump-S-1-zvmlinux>vml

7、inux.txt反汇编vmlinux到vmlinux.txt,vmlinux.txt含有汇编和c源文件的混合代码,看起来很方便。而且能一步步看1inux怎么一步步运行的。5.objdump-S-1-z-jxxxx(sectionname)vmlinux>vmlinux.txt反汇编linux内核段xxxx到文件vmlinux.txt中。6.objdump-xvmlinux>x.txtvmliux中所有段的头信忠,其中包口vmlinux的入口地址等7.objdump—debuggingvmlinux>debugging,txt很多有用的

8、debug信息,如函数名,结拘体定义等我觉的用根据以上信息,ultraedit看很方便。尤其在vmlinux.txt中选中文件名,用ultraedit右铖的open能鸟上打开文件,很方使。objdump-j.text—S

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

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

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