[其他] GNome KDE / GTK GTK+ Qt / GDK / Glib

GTK, GTK+, and Qt are GUI toolkits. These are libraries that developers use to design graphical interfaces, all running on top of the X Server or Wayland. These are things that you need to install as dependencies. They're the Linux "equivalent" to Windows' GDI/GDI+. When an application uses any of these, it will usually have a general "look and feel".

GNOME and KDE are Desktop Environments. GNOME primarily uses the GTK+ toolkit, while KDE primarily uses the Qt toolkit. There are applications designed for GNOME or KDE, such as a settings menu or a default music player, usually in the appropriate toolkit. These Desktop Environments have a set of utilities/window managers/design specification to create a more unified desktop. You can mix the two if you feel like it, but you may run into issues with colliding standards and applications (which is a bit more common on systems like Arch).

Unity uses many of the GNOME utilities and backends (Nautilus, Rhythmbox, gvfs, etc.), so Unity is more GNOME than KDE.

One A GNOME program uses multiple libraries to form a hierarchy:

The Gnome library is at the top level, including help routines, classes, and special widgets, and provides an infrastructure for your application.

The second layer is GTK, which is part of the GTK + library. This library provides a basic toolkit and widget to create GUI applications. Most GUIs are written directly with GTK. GTK also provides a powerful object system for the GNOME library.

The next layer is GDK, which is simply packaged with the X function library, which is only used when we make special drawings or set the special properties of the window.

The bottom layer is glib, a utility library for C, which includes portability and some utility functions, as well as some container classes, such as lists, variable groups, variable-length strings, hashes (seemingly Hassi), caching, an event loop, and other useful constructs

小结:

  • GLib 是基础对象库,不涉及任何图形绘制。
  • GDK 是图形绘制库,如果想定制化widget,则再此层实现。不太需要关心。
  • GTK GTK+ 和 Qt 都是 GUI 库,同级别。设备事件管理和窗口管理都在在这一层。
  • GNome 和 KDE 是对 GUI 库的二次封装。

一般开发触及到 GNome 和 GTK/GTK+ 即可。

相关推荐
2601_9621018314 小时前
广告灯箱导光板材料对比:PMMA vs PC vs PETG,亮欣如何用光学级PMMA实现高亮低故障?
其他
执欣之手17 小时前
Hullnky Taper
其他
邵老师讲教育1 天前
2026实测:6大宁波数学小升初机构横向对比
其他
2601_962101831 天前
侧挂灯箱常见光衰眩光问题诊断:亮欣技术优化方案与效果验证
其他
EFD8888882 天前
中央糕点烘焙冷却车间通风选型,易互德耐湿热布风管保障糕点成品品相
其他
LIU_baoxue2 天前
成都理工大学校园生活全维度解析:学习、活动与生活设施综合报告
其他
北京海得康2 天前
戈利木单抗golimumab贮藏条件,有效期、上市现状
其他
Daimuovo3 天前
盘古模型热带气旋快速增强预报评估
经验分享·笔记·其他
老吴的商业笔记3 天前
2026毕业论文查重小程序横评:深度避坑与选型白皮书
其他
cellurw3 天前
20260730 6组件编译全流程验证与编译指引编写
其他