从开发人员和用户的角度来看,我对这些术语有点困惑。例如,我在Ubuntu上。
GNU libs(https://www.gnu.org/software/libc/)默认安装,gnulib(https://www.gnu.org/software/gnulib)没有安装,对吗?GNU libs遵循POSIX,但是:mono/libc.html#POSIX-Threads,例如,pthread_create不是在这里实现的,而是在Gnulib中实现的,对吗?Gnome glib只是第三个图书馆,对吗?但它是基于GNU libs还是Gnulib的?还有其他类似的图书馆吗?谢谢。
发布于 2014-06-27 22:25:01
1) "GNU libs“对我来说是”作为GNU项目一部分的编程库“。
GNU项目不是一个程序,而是许多东西,其中有许多相互独立的库。
您所链接的第一件事是编程语言C的标准运行时,而不是普通GNU库的euqal。如果它是默认安装的,则取决于您的操作系统。
所谓的gnulib是其他GNU程序/库中使用的一种辅助工具,但是单独使用是没有用的。在没有程序的情况下在任何地方安装它是没有意义的,使用它的程序将包含它,而不需要单独安装一些东西(至少作为包依赖等)。请再说一遍:是否安装取决于。
2)库是否包含POSIX与作为GNU的一部分不一样。又是不同的东西。POSIX是针对不同操作系统的兼容性标准(与libc相关,但对于许多其他操作系统则不相关),GNU是软件的集合等等,而p线程是自己的东西,而不是gnulib的一部分。
3)打滑是另一回事,对吧,不是GNU的一部分。它可能使用GNU库(它可以自己使用gnulib )和/或gnulib本身(不禁止在GNU之外使用它)。为了确定,请看代码。当然还有更多的编程语言..。
发布于 2014-06-27 22:52:52
您所称的GNU libs实际上称为glibc或GNU C Library。它是标准C库和POSIX部分以及Linux特定扩展的实现。
POSIX、specifies、pthread_create和大多数其他的线程函数都可以在一个单独的pthread库中使用。
gnulib和Gnome glib是不遵循任何特定标准的项目。如果你想使用它们,你必须从他们的主页上做出决定。glib由GTK+使用,因此经常安装在桌面linux系统上。在服务器上不是很常见,但通常从一开始就很容易安装。它基于C和POSIX标准,而不是特定的实现。
发布于 2014-06-28 01:11:00
正如其他人所提到的,GLib是另一回事。但是什么呢?
GLib主要是基于Gnome (GTk)Ver的Gnome Desktop代码和应用程序的一部分。3是当前的,Ver。2仍在普遍使用中。
It GLib提供了GNOME中使用的核心对象系统、主循环实现以及用于字符串和公共数据结构的大量实用函数。
您可以在开发人员站点上找到GLib Reference Manual的其他信息。
https://stackoverflow.com/questions/24461254
复制相似问题