gcc、glibc和binutils之间的关系

阅读数:135 评论数:0

跳转到新版页面

分类

Linux

正文

gcc

gnu collect compiler,是一组编译工具的总称,它主要完成的工作任务是“预处理”和“编译”,以及提供了与编译器紧密相关的运行库的支持,如 libgcc_s.so、libstdc++.so等。

binutils

提供了一系列用来创建、管理和维护二进制目标文件的工具程序,如汇编(as)、连接(ld)、静态库归档(ar)、反汇编 (objdump)、elf结构分析工具(readelf)、无效调试信息和符号的工具(strip)等。通常,binutils与gcc是紧密相集成 的,没有binutils的话,gcc是不能正常工作的。

glibc

gnu发布的libc库,也即c运行库。glibc是linux系统中最底层的api(应用程序开发接口),几乎其它任何的运行库 都会倚赖于glibc。glibc除了封装linux操作系统所提供的系统服务外,它本身也提供了许多其它一些必要功能服务的实现,主要的如下:
(1)string,字符串处理
(2)signal,信号处理
(3)dlfcn,管理共享库的动态加载
(4)direct,文件目录操作
(5)elf,共享库的动态加载器,也即interpreter
(6)iconv,不同字符集的编码转换
(7)inet,socket接口的实现
(8)intl,国际化,也即gettext的实现
(9)io
(10)linuxthreads
(11)locale,本地化
(12)login,虚拟终端设备的管理,及系统的安全访问
(13)malloc,动态内存的分配与管理
(14)nis

(15)stdlib,其它基本功能




相关推荐

一、概述 在linux进行c\c++的开发时,常会用到两个库: libc.so  这是标准C库(ANSI C) libstdc++.so  标准C++库(包含STL) 1、libc 它是Linux下原

linux内核启动过程: 启动Linux内核的最终目的是使用Linux上的应用程序,这些应用程序可以是纯软件的,也可以是硬件相关的。 1.BIOS自检 BIOS(Basic Input/Output

配置步骤 1、配置JDK 2、配置Android SDK 3、安装VirtualBox 4、安装启动Genymotion <h

一、概述 在Linux内核中,EXPORT_SYMBOL宏允许内核模块导出符号(通常是函数或变量),使得其他模块可以在它们自己的代码中使用这些符号。这是一种模块间通信的机制,允许模块共享代码而不需要将

一、概述     BFD(Binary File Descriptor library)。BFD库是一个GNU项目,它的目标是希望通过一个统一的接口来处理不同的目标文件。BFD项目本身是binutil

&nbsp;&nbsp;&nbsp; GNU Binutils,是GNU Binary Utilities的简写,BinUtils中比较重要的工具是ld和as。 1、ld

gcc编译一个.c文件 (1)第一步,预处理 gcc -E hello.c -o hello.i 或者

先安装gcc gcc-c++ yum install gcc -y yum install gcc-c++ -y</

一、通过源安装 # 安装arm-linux-gcc sudo apt-get install gcc-arm-linux-gnueabihf # 安装arm-linux-g++ sudo apt-ge