41

我对 GTK 术语感到困惑。根据Wikipedia,似乎存在与 GTK+ 的绑定,称为 GTK (GtkAda) 和 GTK2 (gtk2hs, Gtk2-Perl)。

有人可以帮我解决这个问题吗?

4

3 回答 3

31

该项目的第一个化身称为GTK(代表GIMP Toolkit)。

在很早的时候,虽然该项目仍然是 The GIMP 的一部分(并且在 1.0 版之前),但它被重命名为GTK+。尽管如此,出于方便或无知,人们通常将其称为 GTK。

GTK+ 名称在 1.x、2.x 和 3.x 版本中使用了 20 多年,但“GIMP Toolkit”扩展被删除了。我不知道这到底是什么时候发生的,但可能是在 1.x → 2.x 过渡期间。

没有什么正式称为 GTK2。这就是一些人所说的 GTK+ 的 2.x 系列。

2019-02-06,该项目重命名GTK,这将影响 4.0 版以后。

于 2011-04-29T12:50:25.120 回答
28

GTK/GTK+ 和 GTK2 是同一 API 的不同版本。GTK 是一个旧的、已弃用的版本,GTK2 是以前的版本,GTK+ 3/GTK3 是当前版本。

GTK+ 是旧 API 的正确名称,但大多数人只是称它为 GTK。

GTK+ 的 C++ 绑定是 GTKmm 项目的一部分。

于 2011-04-29T10:26:25.017 回答
5

GTK 是为 Linux / GNU 创建 GUI-s 的库。它有几个版本(我认为最新的是版本 3)。

为了让其他编程语言(C 除外)使用它,必须存在可以将 GTK 绑定到该特定语言的库。

PHP-GTK 意味着有一个将 GTK 绑定到 PHP 的库,使 PHP 能够创建可以在漂亮界面中显示的应用程序。但是,它仅支持 GTK 的 2.2 版。其他语言也是如此,它们有前缀/后缀并且(例如 GtkAda)这些库还告诉您它们支持 GTK 的最高版本(因为您可能想尝试在库绑定 GTK 中不可用的较新的 GTK 函数到您的语言)。

于 2011-04-29T10:24:40.713 回答