Chinaunix首页 | 论坛 | 博客
  • 博客访问: 458645
  • 博文数量: 113
  • 博客积分: 446
  • 博客等级: 下士
  • 技术积分: 1229
  • 用 户 组: 普通用户
  • 注册时间: 2012-12-09 16:01
个人简介

Let's go!!!!!

文章分类

全部博文(113)

文章存档

2019年(5)

2018年(4)

2017年(9)

2016年(5)

2015年(39)

2014年(6)

2013年(28)

2012年(17)

分类: LINUX

2013-05-20 10:52:34

gcc:
    c语言编译器是编译的前端程序,它通过调用其他程序来实现将程序源文件编译成目标文件的功能。
g++:
    c++语言编译器是编译的前端程序,它通过调用其他程序来实现将程序源文件编译成目标文件的功能。
cpp:
预处理工具,将包含include的文件插入原文件中,将宏定义展开,根据条件编译命令选择要使用的代码,最后将这些代码输出到一个.i文件中等待进一步处理。
cll:
编译工具,将.i文件”翻译”成汇编代码。
as:
汇编工具,将汇编代码”翻译”为机器代码,在linux系统上一般表现为elf目标文件(obj文件)。
ld:
将汇编阶段生成的obj文件和系统的obj文件,库文件连接起来,最后生成可执行的文件。
ar:
ar命令可以用来创建、修改库,也可以从库中提出单个模块。
ar -rsv libmodule.a *.o,将当前目录想的所有.o文件生成库libmodule.a。
randlib:
ar用来创建和维护静态库,当用ar直接将一个.o文件追加到静态库结尾。之后使用这个库生成可执行文件时,链接程序ld提示错误。这是因为静态库中的符号索引表无法定位刚加入的.o文件中定义的函数或者变量,所以需要randlib对静态库的符号索引表更新。
Randlib  libmodule.a
strip:
除去绑定程序和符号调试程序使用的信息,减少对象文件的大小。
objcopy:
复制一个目标文件的内容到另一个文件中,可以使用不同于源文件的格式来输出目的文件,即可以进行格式转换。arm-linux-objcopy -O binary -S elf_file bin_file
objdump:
显示二进制文件的信息,常用来查看反汇编文件。
将elf格式的文件转换为反汇编文件:
arm-linux-objdump –D elf_file ->dis_file
将二进制格式的文件转换为反汇编文件:
arm-linux-objdump –D –b binary -m arm bin_file ->dis_file



阅读(2038) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~