首页 > 解决方案 > ubuntu 中的 libc 还是 glibc?

问题描述

我对这些库有点困惑。我现在在 Ubuntu 上工作,我使用 g++ 5,我看到我的应用程序链接在 libc.so 中。它是 Ubuntu 对 C 标准库的实现吗?它与 glibc 不同吗?

$ ldd application.exe
...
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6
...

标签: ubuntugccglibclibc

解决方案


当前的 Ubuntu 使用 glibc 来实现 C 标准库。源包被调用glibc,但是安装的二进制包libc6因为历史原因被调用。libc6如果您运行以下命令,您可以在系统上查看软件包的确切版本:

dpkg -l libc6

曾经有一个 glibc 的临时分支,叫做 eglibc,但是eglibc 的开发已经被放弃了;在此之前,所有活动的 eglibc 特定端口都合并到 glibc 中。

Ubuntu 也有用于替代 libc 实现的软件包,例如musl,但发行版本身不使用它们,因为它是基于 glibc 的。


推荐阅读