【glibc,uclibc的简介】
1.glibc
glibc = GNU C Library
是GNU项目,所实现的 C语言标准库(C standard library)。
目前,常见的桌面和服务器中的GNU/Linux类的系统中,都是用的这套C语言标准库。
其实现了常见的C库的函数,支持很多种系统平台,功能很全,但是也相对比较臃肿和庞大。
2.uclibc
一个小型的C语言标准库,主要用于嵌入式。
此处的u意思是μ,Micro,微小的意思。
uclibc的特点:
(1)uclibc比glibc要小很多。
(2)uclibc是独立的,为了应用于嵌入式系统中,完全重新实现出来的。和glibc在源码结构和二进制上,都不兼容。
【glibc和uclibc的渊源/历史/区别/联系】
1. 写程序,需要用到很多c语言的库函数。所有的库函数加起来,就是对应的C语言(标准)函数库。
2. 目前在普通GNU/Linux系统中所用的C语言标准库,叫做glibc。其功能很全,函数很多,但是代码太多,编译出来的函数库的大小也很大,即资源占用也很多。
3. 而嵌入式系统中,也需要C语言写代码实现特定功能,也需要用到C语言函数库,但是由于嵌入式系统中,一般资源比较有限,所以不适合直接使用(太占用资源的)glibc。
4. 所以有人就又(没有参考glibc,而是从头开始)重新实现了一个用于嵌入式系统中的,代码量不是很大的,资源占用相对较少的,C语言函数库,叫做uclibc。
转自https://www.crifan.com/relation_between_uclibc_glibc_eglibc/