GObject Gtk,Gnome,Gtk +,Gl,Gtk2,Gtk3 ......我不明白?

KA1*_*KA1 9 gtk gobject gtk2

我需要一些窗口来托管webkit或/和cairo drwaing,但我必须首先处理所有这些以了解我正在做什么.

现在.我迷失了,不再理解那是什么了.

当我尝试使用绑定或试图确定什么是依赖项时,事情变得更糟.例如:在python中,pyGtk已弃用并被pyGObject替换(有时称为pyGl !!)

有许多网站,许多下载和版本,混合过时和新的参考,但没有一个整体的架构视图.

什么我不明白..这些东西是如何在太多的网站,包和版本中相互混合的?

lib*_*rce 16

短篇小说:

如果您正在为GTK 2编程,请使用pyGTK.

如果您正在为GTK 3编程,请使用pyGObject.

长篇故事:

根据我的理解,pyGTK基于pyGObject.GObject是GTK的"对象"API.GTK是用C开发的,它不是面向对象的语言.GObject是一个提供高级面向对象设施的库.所有GTK对象都继承自该库提供的GObject类.

然后是GObject-introspection工作.它的目标是使绑定维护更容易,并使用源代码注释自动生成每种语言(python,C++等)的大多数绑定代码.这导致了pyGI中的python端,基于GObject内省工作的python绑定.当人们被告知将其用于GTK3开发时.

从那以后,pyGI提供的GObject-introspection工作已经集成到GObject中.pyGObject最终成为开发人员应该在GTK3中用于python开发的东西.

请阅读:

关于GNOME/GTK关系:

GTK是GNOME项目使用的工具包.它是从GIMP中提取的,因此得名(GTK代表:GIMP工具包).GTK是GNOME项目的核心部分,GTK开发人员通常也参与GNOME项目.


Joh*_*gko 12

我对你提到的那些组件的理解:

GNOME 2中问题中提到的组件的依赖关系链

GNOME 3中问题中提到的组件的依赖关系链