GLib is a bundle of five low-level system libraries written in C and developed mainly by GNOME. GLib code was separated from GTK+, so it can be used by software other than GNOME and has been developed in parallel ever since.

The GLib package consisted of 5 libraries, but they were all merged into one library (since then simply known as Glib), and are no longer sustained as standalone libraries. The five original libraries were:

GLib began as part of the GTK+ project. However, before releasing GTK+ version 2, the project's developers decided to separate non-GUI-specific code from GTK+, thus creating GLib as a separate software bundle. GLib was released as a separate library so other developers, those who did not make use of the GUI-related portions of GTK+, could make use of the non-GUI portions of the library without the overhead of depending on the entire GUI library.

Since GLib is a cross-platform library, applications using it to interface with the operating system are usually portable across different operating systems without major changes.[2]

^Krause, Andrew (2007). Foundations of GTK+ Development. Expert's Voice in Open Source. Apress. p. 5. ISBN1-59059-793-1. Retrieved 3 April 2013. [GLib] provides a cross-platform interface that allows your code to be run on any of its supported operating systems with little to no rewriting of code!