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.
Ce paquet est connu pour se construire correctement sur une
plateforme LFS-8.2.
Informations sur le paquet
Téléchargements supplémentaires
Dépendances de GLib
Recommandées
PCRE-8.41
(construit avec les propriétés Unicode)
Facultatives
dbus-1.12.4 (requis pour quelques tests),
docbook-xml-4.5, docbook-xsl-1.79.2 et libxslt-1.1.32 (pour
construire les pages de manuel)
Dépendances de Additional Runtime
gobject-introspection-1.54.1
(doit être installé avant gtk+, atk, etc.)
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-1.9 et de desktop-file-utils-0.23.
Notes utilisateur : http://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.22.28, 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 valuer
de la variable est un nombre qui correspond à :
1 Alerte
|
2 Critique
|
3 Erreur
|
4 Avertissement
|
5 Remarque
|
Par exemple 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.54.3-skip_warnings-1.patch
Avertissement
Si vous mettez à jour depuis une version précédente de GLib qui a
été construite avec les autotools, et que les archives
libtool ont été installées, vous
devrez ajouster toutes les archives libtool en remplaçant les
références aux archives de ce paquet, /usr/lib/libg{io,lib,module,object,thread}-2.0.la
,
par le drapeau de l'éditeur de lien (-l), -lg{io,lib,module,object,thread}.
Plus de 600 fichiers doivent être modifiés sur un bureau gnome
complet.
Installez GLib en lançant les
commandes suivantes :
patch -Np1 -i ../glib-2.54.3-meson_fixes-1.patch &&
mkdir build-glib &&
cd build-glib &&
meson --prefix=/usr -Dwith-pcre=system -Dwith-docs=no .. &&
ninja
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
:
Note
Si libxslt-1.1.32 est installé, la commande
suivante peut indiquer plusieurs erreurs (environ 33) qui
commencent par « Error: no ID for constraint linkend: »
lors de l'installation des pages de manuel. Elles sont
inoffensives.
ninja install &&
chmod -v 755 /usr/bin/{gdbus-codegen,glib-gettextize} &&
mkdir -p /usr/share/doc/glib-2.54.3 &&
cp -r ../docs/reference/{NEWS,README,gio,glib,gobject} /usr/share/doc/glib-2.54.3
Vous devriez maintenant installer desktop-file-utils-0.23 et lancer la
suite de tests.
Pour tester les résultats, après l'installation du paquet,
lancez : ninja
test. Lorsqu'il est lancé dans un environnement
graphique, un test, appinfo, échoue si gnome-terminal-3.26.2 n'est pas
installé.
Explication des commandes
sed ...
meson.build : Corrige la version du paquet
pour être en accord avec les autres numéros de version inclus dans
le code.
-Dwith-pcre=system
:
Il résulte de ce paramètre que la construction utilise une version
de la bibliothèque PCRE fournie
par le système à la place d'une version interne.
-Dwith-docs=no
: Ce
paramètre évite la reconstruction de la documentation du paquet.