LIBC - Linux手册页

时间:2019-08-20 18:01:53  来源:igfitidea点击:

Linux程序员手册 第7部分
更新日期: 2016-12-12

名称

libc-Linux上标准C库的概述

说明

术语" libc"通常用作"标准C库"的缩写,"标准C库"是可被所有C程序(有时还被其他语言的程序使用)的标准函数的库。由于有一些历史记录(请参阅下文),因此在Linux上使用术语" libc"来指代标准C库有些含糊。

glibc

到目前为止,Linux上使用最广泛的C库是GNU C库,通常称为glibc。这是当今所有主要Linux发行版中都使用的C库。这也是C库,其详细信息记录在手册页项目的相关页中(主要在手册的第3节中)。 glibc的文档也可在glibc手册中找到,可通过命令info libc获得。 glibc的1.0版发布于1992年9月。(有较早的0.x发行版。)glibc的下一个主要版本是2.0,即1997年初。

路径名/lib/libc.so.6(或类似名称)通常是指向glibc库位置的符号链接,执行此路径名将使glibc显示有关系统上安装的版本的各种信息。

Linux libc

在1990年代初期到中期,Linux libc出现了一段时间,这是Linux开发人员创建的glibc 1.x的一个分支,他们认为当时的glibc开发不足以满足Linux的需求。通常,该库被(模糊地)称为" libc"。 Linux libc发布了主要版本2、3、4和5,以及这些版本的许多次要版本。 Linux libc4是最后一个使用a.out二进制格式的版本,也是第一个提供(原始)共享库支持的版本。 Linux libc 5是第一个支持ELF二进制格式的版本。此版本使用了共享库libc.so.5。一段时间以来,Linux libc是许多Linux发行版中的标准C库。

但是,尽管有Linux libc努力的最初动机,但是在glibc 2.0发行之时(1997年),它显然优于Linux libc,并且所有使用Linux libc的主要Linux发行版都很快切换回glibc。为了避免与Linux libc版本混淆,glibc 2.0和更高版本使用了共享库soname libc.so.6。

由于从Linux libc切换到glibc 2.0是很久以前的事,因此手册页不再需要记录Linux libc详细信息。但是,在一些手册页中,尤其是对libc4和libc5的引用中,仍然可以找到有关Linux libc的信息痕迹的历史记录。

Other C libraries

还有许多其他未广泛使用的Linux C库。在功能和内存占用方面,这些库通常都比glibc小,并且通常用于构建小型二进制文件,可能是针对嵌入式Linux系统的开发。在这些库中,有uClibc Dietlibc和musl libc,这些库的详细信息在man-pages项目中进行了介绍,在此处它们是已知的。

另外参见

syscalls(2),getauxval(3),proc(5),feature_test_macros(7),手册页(7),标准(7),vdso(7)

出版信息

这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/