【问题标题】:"GNU libs vs Gnulib vs Gnome glib" confusing“GNU libs vs Gnulib vs Gnome glib”令人困惑
【发布时间】:2014-06-27 21:48:09
【问题描述】:

从开发人员和用户的角度来看,我对这些术语有些困惑。 例如,我在 Ubuntu 上。

  1. GNU libs(https://www.gnu.org/software/libc/) 是默认安装的,gnulib(https://www.gnu.org/software/gnulib) 不是,对吧?
  2. GNU libs 遵循 POSIX 标准,但是: http://www.gnu.org/software/libc/manual/html_mono/libc.html#POSIX-Threads , 所以看起来像,例如pthread_create在这里没有实现,在Gnulib中实现,对吧?
  3. Gnome glib 只是第三个图书馆,对吧​​?但它基于GNU libsGnulib?还有其他类似的库吗?

谢谢。

【问题讨论】:

    标签: c gnu glibc glib


    【解决方案1】:

    您所称的GNU libs 实际上称为glibcGNU C Library。 它是标准 C 库和部分 POSIX 以及 Linux 特定扩展的实现。

    POSIX specifies pthread_create 和大多数其他 pthread 函数在单独的 pthread 库中可用。

    gnulibGnome glib 是不遵循任何特定标准的项目。如果你想使用它们,你必须从他们的主页上决定。 glibGTK+ 使用,因此经常安装在桌面 linux 系统上。在服务器上并不常见,但如果从一开始就没有安装,通常很容易安装。它基于 C 和 POSIX 标准,而不是特定的实现。

    【讨论】:

      【解决方案2】:

      1) “GNU 库”对我来说意味着“作为 GNU 项目一部分的编程库”。
      GNU项目不是做一个单一的程序,而是做很多东西,里面有很多相互独立的库。
      您链接的第一件事是它们的编程语言 C 的标准运行时,而不是一般的 GNU 库。是否默认安装取决于您的操作系统。
      所谓的 gnulib 是其他 GNU 程序/库中使用的辅助工具,但单独没有用。在没有程序的情况下将它安装在任何地方都是没有意义的,并且使用它的程序将已经包含它,而无需单独安装某些东西(至少作为数据包依赖项等)。再次:是否安装取决于。

      2) lib 是否遵循 POSIX 与成为 GNU 的一部分不同。又是不同的东西。 POSIX 是不同操作系统的兼容性标准(与 libc 相关,但与许多其他操作系统无关),GNU 是软件等的集合。pthread 是自己的东西,而不是 gnulib 的一部分。

      3) Glib 是另一回事,对吧;不是 GNU 的一部分。它可能使用 GNU 库(可能使用 gnulib 本身)和/或 gnulib 本身(不禁止在 GNU 之外使用它)。为了确保,请查看代码。当然还有更多的编程库...

      【讨论】:

        【解决方案3】:

        正如其他人所提到的,GLib 是另一回事。但是什么?

        GLib 主要是Gnome Desktop 代码和基于 Gnome Toolkit (GTk)[Ver.] 的应用程序的一部分。 3 是当前版本,版本。 2 仍然常用]。

        它 [GLib] 提供了 GNOME 中使用的核心对象系统、主循环实现以及用于字符串和常见数据结构的大量实用函数。

        您可以在开发者网站上找到GLib Reference Manual 的更多信息。

        【讨论】:

          猜你喜欢
          • 2013-08-03
          • 2011-01-15
          • 1970-01-01
          • 2022-01-21
          • 2022-01-17
          • 2021-06-27
          • 2018-02-26
          • 2012-05-15
          • 1970-01-01
          相关资源
          最近更新 更多