gcc编译工具集中各软件的用途,了解EFF文件格式

本文详细介绍了GCC编译工具集,包括GCC、Binutils和C运行库的作用。GCC编译过程分为预处理、编译、汇编和链接四个阶段。此外,文章还深入解析了EFF文件格式,特别是ELF文件的组成部分,如.text、.rodata、.data和.bss段。最后,列举了GCC的常用编译命令。
摘要由CSDN通过智能技术生成

目录

(一)、gcc编译工具

(一)GCC

(二)GCC编译过程

(二)EFF文件格式

(三)GCC的常用命令


一、gcc编译工具

(一)GCC

GCC(GNU C Compiler)是编译工具。本文所要介绍的将 C/C++语言编写的程序 转换成为处理器能够执行的二进制代码的过程即由编译器完成。

Binutils: 一组二进制程序处理工具,包括:addr2line、ar、objcopy、objdump、as、ld、 ldd、readelf、 size 等。这 一组工具是开发和调试不可缺少的工具 。

(1)addr2line:用来将程序地址转换成其所对应的程序源文件及所对应的代码行,也可以得到所对应的函数。帮助调试器在调试的过程中定位对应的源代码位置。

(2) as:主要用于将汇编语言编写的源程序装换成二进制形式的目标代码。

(3) ld:主要用于将多个目标文件连接成为可执行程序,同时指定程序在运行时是如何执行的。

(4) ar:从文件中创建、修改和扩展文件,主要用于创建静态库。

(5) ldd:可以用于查看一个可执行程序依赖的共享库。

(6) objcopy:将一种对象文件翻译成另一种格式,譬如将.bin 转换成.elf、或 者将.elf 转换成.bin 等。

(7) objdump:主要的作用是反汇编。既可以反汇编二进制文件,也可以对对象文件进行反汇编。

(8) readelf:显示有关 ELF 文件的信息。

(9) size:列出可执行文件每个部分的尺寸和总尺寸,代码段、数据段、总大小等。

C运行库
C 语言标准主要由两部分组成:一部分描述C的语法,另一部分描述C标准库。 C标准库定义了一组标准头文件,每个头文件中包含一些相关的函数、变量、类型声明和宏定义,譬如常见的printf函数便是一个 C标准库函数,其原型定义在stdio头文件中。 C语言标准仅仅定义了C标准库函数原型,并没有提供实现。因此,C语言编译器通常需要一个C运行时库(C Run Time Libray,CRT)的支持。C 运行时库又常简称为 C运行库。与 C语言类似,C++也定义了自己的标准,同时提供相关支持库,称为C++运行时库。<

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值