glibc是什么,它的作用是做什么的谢谢帮我解答下?linux glibc默认安装在哪

本文目录
- glibc是什么,它的作用是做什么的谢谢帮我解答下
- linux glibc默认安装在哪
- 如何检查Linux上的glibc版本
- Linux升级Glibc时系统奔溃是什么原因如何解决
- linux下如何更新glibc包
- glibc和libc到底有什么区别
- 如何查看linux glibc
- 怎么在CentOS里用yum升级glibc到2.1.3+版本
- uclibc,eglibc,glibc之间的区别和联系
- 哪位大神简要介绍一下Linux如何安全升级glibc我在debian下成功编译了新版本的glibc
glibc是什么,它的作用是做什么的谢谢帮我解答下
glibc是gnu发布的libc库,即c运行库。glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc。glibc除了封装linux操作系统所提供的系统服务外,它本身也提供了许多其它一些必要功能服务的实现。由于 glibc 囊括了几乎所有的 UNIX 通行的标准,可以想见其内容包罗万有。而就像其他的 UNIX 系统一样,其内含的档案群分散于系统的树状目录结构中,像一个支架一般撑起整个作业系统。在 GNU/Linux 系统中,其C函式库发展史点出了GNU/Linux 演进的几个重要里程碑,用 glibc 作为系统的C函式库,是GNU/Linux演进的一个重要里程碑。
参见:
linux glibc默认安装在哪
GNU C库(glibc)是标准C库的GNU实现。glibc是GNU工具链的关bai键组件,用于和二进制工具和编译器一起使用,为目标架构生成用户空间应用程序。
当从源码进行构建时,一些Linux程序可能需要链接到某个特定版本的glibc。在这种情况下,你可能想要检查已安装的glibc信息以查看是否满足依赖关系。
这里介绍几种简单的方法,方便你检查Linux上的glibc版本。
方法一
下面给出了命令行下检查GNU C库的简单命令。
$ ldd --version
在本例中,glibc版本是2.19。
方法二
另一个方法是在命令行“输入”glibc 库的名称(如,libc.so.6),就像命令一样执行。
输出结果会显示更多关于glibc库的详细信息,包括glibc的版本以及使用的GNU编译器,也提供了glibc扩展的信息。glibc变量的位置取决于Linux版本和处理器架构。
在基于Debian的64位系统上:
$ /lib/x86_64-linux-gnu/libc.so.6
在基于Debian的32位系统上:
$ /lib/i386-linux-gnu/libc.so.6
在基于Red Hat的64位系统上:
$ /lib64/libc.so.6
在基于Red Hat的32位系统上:
$ /lib/libc.so.6
如何检查Linux上的glibc版本
1、首先连接上Linux主机,如图所示,使Linux主机处于一个命令状态。
2、然后看到是处于命令行状态,如图所示,接下需要输入rpm -qi glibc的命令。
3、最后,输入之后,回车键确定,进入glibc的详细信息,其中“Version”后面显示的就是版本了,这样操作即可解决问题。
Linux升级Glibc时系统奔溃是什么原因如何解决
要点:
glibc是gnu发布的libc库,即c运行库。glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc。glibc除了封装linux操作系统所提供的系统服务外,它本身也提供了许多其它一些必要功能服务的实现。由于 glibc 囊括了几乎所有的 UNIX 通行的标准,可以想见其内容包罗万象。
升级Glibc的忠告:不要在运行中的系统上安装 Glibc,否则将会导致系统崩溃,至少应当将新 Glibc 安装到其他的单独目录,以保证不覆盖当前正在使用的 Glibc。(我就无知的覆盖了,囧!)
解决方法:
赶赴机房吧,幸好我在替换前在目录/lib下保存了原来的库文件(libc-2.5.so.bak),使用Linux系统盘进入“救援模式”,将被替换的2个库文件恢复,重启系统就可以了;
系统正常启动了,就交给其他部门的同事去恢复数据吧。
上面就是Linux升级Glibc时系统奔溃的解决方法的介绍了,方法很简单,就要进入救援模式,将替换的库文件恢复回来就可以了,如果你在升级Glibc的时候不覆盖原有的Glibc就不会导致系统奔溃。
linux下如何更新glibc包
1、linux更新包,首选用yum来进行更新(前提是你的linux能上外网),命令如下:
yum install glibc* ----------虽然是安装命令,但是查到已安装后,会自动更新到yum源的最新版本。
2、也可以使用下载的rpm包手工更新的方法,下载最新的glic包然后上传到linux系统安装即可
glibc和libc到底有什么区别
glibc和libc都是Linux下的C函数库,libc是Linux下的ANSI C的函数库;glibc是Linux下的GUN C的函数库。
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 glibc
GNU C库(glibc)是标准C库的GNU实现。glibc是GNU工具链的关键组件,用于和二进制工具和编译器一起使用,为目标架构生成用户空间应用程序。
当从源码进行构建时,一些Linux程序可能需要链接到某个特定版本的glibc。在这种情况下,你可能想要检查已安装的glibc信息以查看是否满足依赖关系。
这里介绍几种简单的方法,方便你检查Linux上的glibc版本。
方法一
下面给出了命令行下检查GNU C库的简单命令。
$ ldd --version
在本例中,glibc版本是2.19。
方法二
另一个方法是在命令行“输入”glibc 库的名称(如,libc.so.6),就像命令一样执行。
输出结果会显示更多关于glibc库的详细信息,包括glibc的版本以及使用的GNU编译器,也提供了glibc扩展的信息。glibc变量的位置取决于Linux版本和处理器架构。
在基于Debian的64位系统上:
$ /lib/x86_64-linux-gnu/libc.so.6
在基于Debian的32位系统上:
$ /lib/i386-linux-gnu/libc.so.6
在基于Red Hat的64位系统上:
$ /lib64/libc.so.6
在基于Red Hat的32位系统上:
$ /lib/libc.so.6
怎么在CentOS里用yum升级glibc到2.1.3+版本
你好,
yum update glibc 可以将glibc升级到163仓库中gblic最高的版本,不过一般yum仓库里不会是最新。如果要安装最新的,还是去官网上下载rpm包或者源码包来安装。
uclibc,eglibc,glibc之间的区别和联系
1. 写程序,需要用到很多c语言的库函数。所有的库函数加起来,就是对应的C语言(标准)函数库。
2. 目前在普通GNU/Linux系统中所用的C语言标准库,叫做glibc。其功能很全,函数很多,但是代码太多,编译出来的函数库的大小也很大,即资源占用也很多。
3. 而嵌入式系统中,也需要C语言写代码实现特定功能,也需要用到C语言函数库,但是由于嵌入式系统中,一般资源比较有限,所以不适合直接使用(太占用资源的)gLibc。
4. 所以有人就又(没有参考glibc,而是从头开始,)重新实现了一个用于嵌入式系统中的,代码量不是很大的,资源占用相对较少的,C语言函数库,叫做uClibc。并且,uClibc不支持MMU(内存管理单元)。
5. 而后来,glibc的开发者,又推出个Embedded glibc,简称eglibc,其主要目的也是将glibc用于嵌入式领域。
相应最大的改动就在于,把更多的库函数,改为可配置的,这样,如果你的嵌入式系统中不需要某些函数,就可以裁剪掉,不把该函数编译到你的eglibc库中,使得最终生成的eglibc库的大小变小,最终符合你的嵌入式系统的要求(不能超过一定的大小),这样,就实现了,把glibc引用于嵌入式系统中的目的了。
可以简单的理解为:
glibc,uClibc,eglibc都是C语言函数库:
1. uClibc是嵌入式系统中用的(不支持MMU),glibc是桌面系统用的
2. eglibc也是嵌入式系统中用的(资源占用少),是glibc的嵌入式版本,和glibc在源码和二进制上兼容。
哪位大神简要介绍一下Linux如何安全升级glibc我在debian下成功编译了新版本的glibc
你可以借鉴一下gentoo的升级思路,因为gentoo都是源代码编译的
首先编译核心工具组(gcc, ld, binutils),注意使用静态编译(--disable-shared),安装到指定的位置(--with-sysroot --with-local-prefix)
然后chroot到那个位置编译glibc并安装
然后使用新的glibc静态编译核心工具组,chroot回去,覆盖安装回原来的地方
用此工具组再次本地编译glibc

本文相关文章:
complicated的意思(complicated什么意思)
2026年10月1日 20:10
eclipse开发教程(eclipse怎么编写JAVA程序,怎么新建)
2026年9月24日 15:00
尚未调用coinitialize(电脑总是出现“尚未调用CoInitialize.“.怎么才能让它消失)
2026年9月15日 07:50
oracle数据库基本操作(怎么在linux中操作oracle数据库)
2026年9月10日 03:00
complicated和complex(complicated与complex有什么区别)
2026年9月8日 13:40
更多文章:
repercussions(都是余波,repercussions和aftermath有什么区别啊)
2026年10月11日 09:00
dropdownlist 绑定(DropDownList 绑定所有项 并 显示指定项)
2026年10月11日 08:50
易语言网页api接口怎么调用(易语言,怎么读取网页json的api)
2026年10月11日 08:00
majority of(the majority of 和 a majority of的区别以及用法例句)
2026年10月11日 07:40
another time(another time和other time的区别)
2026年10月11日 05:00


