GLib-2.74.5

Introduction à GLib

Le paquet GLib contient des bibliothèques de bas niveau utiles pour avoir la gestion de structures de données pour le C, des enveloppes de portabilité et des interfaces pour des fonctionnalités d'exécution telles qu'une boucle d'événements, les fils d'exécution, le chargement dynamique et un système d'objets.

This package is known to build and work properly using an LFS 11.3 platform.

Informations sur le paquet

Téléchargements supplémentaires

Dépendances de GLib

Recommandées

Facultatives

dbus-1.14.6 (pour certains tests), Fuse-3.13.1 et bindfs (tous deux utilisés dans un test), GDB-13.1 (pour les liaisons), docbook-xml-4.5, docbook-xsl-nons-1.79.2, GTK-Doc-1.33.2 (pour construire la documentation de l'API), glib-networking-2.74.0 (pour certains tests, mais c'est une dépendance circulaire) et sysprof-3.46.0

Dépendances de Additional Runtime

Cité directement depuis le fichier INSTALL : « Certaines fonctionnalités de GIO liées aux types mime exigent update-mime-database et les outils update-desktop-database », qui font partie respectivement de shared-mime-info-2.2 et de desktop-file-utils-0.26. Ces deux utilitaires sont aussi requis pour certains tests.

Notes utilisateur : https://wiki.linuxfromscratch.org/blfs/wiki/glib2

Installation de GLib

Si vous le souhaitez, appliquez le correctif facultatif. Dans beaucoup de cas, les applications qui utilisent cette bibliothèque, directement ou indirectement via d'autres bibliothèques comme GTK+-3.24.36, affichent de nombreux avertissements lorsqu'ils sont lancés depuis la ligne de commande. Ce correctif permet d'utiliser une variable d'environnement, GLIB_LOG_LEVEL, qui supprime les messages non souhaités. La valeur de la variable est un nombre qui correspond à :

1 Alerte
2 Critique
3 Erreur
4 Avertissement
5 Remarque

Par exemple export GLIB_LOG_LEVEL=4 ignorera les sorties de messages d'avertissement et de remarque (et les messages Info/Debug s'ils sont activés). Si GLIB_LOG_LEVEL n'est pas défini, la sortie des messages normaux ne sera pas affectée.

patch -Np1 -i ../glib-2.74.5-skip_warnings-1.patch
[Avertissement]

Avertissement

Si vous avez installé une version précédente de glib, déplacez les en-têtes là où ils ne gêneront pas pour que les paquets suivants n'aient pas de conflits :

if [ -e /usr/include/glib-2.0 ]; then
    rm -rf /usr/include/glib-2.0.old &&
    mv -vf /usr/include/glib-2.0{,.old}
fi

Installez GLib en exécutant les commandes suivantes :

mkdir build &&
cd    build &&

meson --prefix=/usr       \
      --buildtype=release \
      -Dman=true          \
      ..                  &&
ninja
[Note]

Note

Si libxslt-1.1.37 est installé, la commande suivante peut indiquer plusieurs erreurs (environ 33) qui commencent par « Error: no ID for constraint linkend: » lors de la génération des pages de manuel. Elles sont inoffensives.

La suite de tests de GLib exige desktop-file-utils pour quelques tests. Cependant, desktop-file-utils exige GLib pour se compiler ; vous devrez donc installer d'abord GLib puis lancer la suite de test.

Maintenant, en tant qu'utilisateur root :

ninja install &&

mkdir -p /usr/share/doc/glib-2.74.5 &&
cp -r ../docs/reference/{gio,glib,gobject} /usr/share/doc/glib-2.74.5

Vous devriez maintenant installer desktop-file-utils-0.26 et shared-mime-info-2.2 et lancer la suite de tests.

[Avertissement]

Avertissement

Ne lancez pas la suite de tests en tant que root ou certains tests échoueront de manière inattendue et laisseront des répertoires qui ne se conforment pas à la FHS dans la hiérarchie /usr.

Pour tester les résultats, après avoir installé le paquet, lancez : LC_ALL=C ninja test en tant qu'utilisateur non root. Un test nommé glib:glib / error est connu pour échouer.

Explication des commandes

--buildtype=release : spécifie le type de construction convenant aux versions stables de ce paquet, comme la valeur par défaut produit des binaires non optimisés.

-Dman=true : Ce paramètre cause la construction et l'installation des pages de manuel du paquet.

-Dgtk_doc=true : Ce paramètre cause la construction et l'installation de la documentation de l'API.

Contenu

Programmes installés: gapplication, gdbus, gdbus-codegen, gio, gio-querymodules, glib-compile-resources, glib-compile-schemas, glib-genmarshal, glib-gettextize, glib-mkenums, gobject-query, gresource, gsettings, gtester et gtester-report
Bibliothèques installées: libgio-2.0.so, libglib-2.0.so, libgmodule-2.0.so, libgobject-2.0.so et libgthread-2.0.so
Répertoires installés: /usr/include/gio-unix-2.0, /usr/include/glib-2.0, /usr/lib/glib-2.0, /usr/share/glib-2.0, /usr/share/doc/glib-2.74.5 et /usr/share/gtk-doc/html/{gio,glib,gobject} (facultatif)

Descriptions courtes

gapplication

peut être utilisé pour démarrer des applications et pour envoyer des messages aux instances déjà lancées d'autres applications

gdbus

est un outil simple utilisé pour fonctionner avec des objets D-Bus

gdbus-codegen

est utilisé pour générer du code et de la documentation pour une ou plusieurs interfaces D-Bus

gio

est un utilitaire qui rend plusieurs fonctionnalités de GIO disponibles depuis la ligne de commande

gio-querymodules

est utilisé pour créer un fichier giomodule.cache dans les répertoires listés. Ce fichier liste les points d'extension implémentés pour chaque module trouvé

glib-compile-resources

est utilisé pour lire la description des ressources à partir d'un fichier et des fichiers référencés pour créer un catalogue de ressources binaire adapté à une utilisation avec l'API GResource

glib-compile-schemas

est utilisé pour compiler tous les fichiers de schémas XML de GSettings du répertoire en un fichier binaire nommé gschemas.compiled utilisable par GSettings

glib-genmarshal

est un outil de génération marshaller de code C pour les closures GLib

glib-gettextize

est une variante de l'outil d'internationalisation gettext

glib-mkenums

est un outil de génération de description des enum du langage C

gobject-query

est un outil qui dessine une arborescence de types

gresource

offre une interface simple en ligne de commande avec GResource

gsettings

offre une interface simple en ligne de commande avec GSettings

gtester

est un outil d'exécution de tests

gtester-report

est un outil de formatage de rapports de test

Bibliothèques GLib

contient une bibliothèque cœur de bas niveau pour le Toolkit GIMP