Linux有问必答:如何检查Linux上的glibc版本
问题:我需要找出我的Linux系统上的GNU C库(glibc)的版本,我怎样才能检查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
下图中是输入glibc库后的输出结果样例。
- 微博评论 2014-11-28 07:03 3 赞 回复
- win下的dll却不可以,地址空间不同。//@cjacker:loader当然是可以执行的啦,只不过起了个.so的名字。//@Linux中国:话说我是第一次知道 libc 的.so 库可以直接在命令行执行,有和我一样不知道的么?
- 微博评论 2014-11-28 00:03 14 赞 回复
- 一直都可以啊啊啊啊,都是标准elf可执行文件//@Linux中国:话说我是第一次知道 libc 的.so 库可以直接在命令行执行,有和我一样不知道的么?
- 微博评论 2014-11-27 23:33 3 赞 回复
- loader当然是可以执行的啦,只不过起了个.so的名字。//@Linux中国:话说我是第一次知道 libc 的.so 库可以直接在命令行执行,有和我一样不知道的么?
LCTT 译者