Introduction à libxml2
Le paquet libxml2 contient des
bibliothèques et des utilitaires utilisés pour analyser des
fichiers XML.
Note
Les versions de développement de BLFS peuvent ne pas arriver à
contruire ou à exécuter certains paquets correctement si LFS ou
des dépendances ont été mises à jour depuis la dernière version
stable des livres.
Informations sur le paquet
-
Téléchargement (HTTP) :
https://download.gnome.org/sources/libxml2/2.15/libxml2-2.15.0.tar.xz
-
Téléchargement (FTP) :
-
Somme de contrôle MD5 du téléchargement :
4f44fc1e16ed59c91022e4e89864bcdb
-
Taille du téléchargement : 1,9 Mo
-
Estimation de l'espace disque requis : 84 Mo (avec
les tests)
-
Estimation du temps de construction : 0,2 SBU (avec
parallélisme = 4 ; avec les tests)
Téléchargements supplémentaires
Dépendances de libxml2
Recommandées
ICU-77.1
Facultatives
Valgrind-3.25.1 (peut être utilisé dans les
tests)
Installation de libxml2
Tout d'abord, appliquez un correctif amont pour corriger un échec
de l'analyse de valeurs d'attributs non encore normalisés (par
exemple, les sources de BLFS et les sources de PostgreSQL-18.0 contiennent ce genre de
valeur) :
patch -Np1 -i ../libxml2-2.15.0-upstream_fix-1.patch
Installez libxml2 en exécutant les
commandes suivantes :
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-static \
--with-history \
--with-icu \
--docdir=/usr/share/doc/libxml2-2.15.0 &&
make
Si vous avez téléchargé la suite de tests, exécutez la commande
suivante :
tar xf ../xmlts20130923.tar.gz
Pour tester les résultats lancez : make check > check.log. This
command will print several lines of error messages like
« Failed to parse
xstc/...
» because some test files are
missing and these messages can be safely ignored. A summary of the
results can be obtained with grep -E
'^Total|expected|Ran' check.log. If Valgrind-3.25.1 is
installed and you want to check for memory leaks, replace
check with
check-valgrind.
Note
Les tests utilisent http://localhost/ pour tester l'analyse
des entités externes. Si la machine où vous lancez les tests sert
un site web, les tests peuvent durer indéfiniment, en fonction du
contenu servi. Il est donc recommandé d'éteindre le serveur
durant les tests, en tant qu'utilisateur root
:
/etc/init.d/httpd stop
Maintenant, en tant qu'utilisateur root
:
make install
Enfin, évitez que certains paquets ne soient inutilement liés à ICU
en utilisant les commandes suivantes en tant qu'utilisateur
root
:
rm -vf /usr/lib/libxml2.la &&
sed '/libs=/s/xml2.*/xml2"/' -i /usr/bin/xml2-config
Explication des commandes
--disable-static
: Ce
paramètre empêche l'installation des versions statiques des
bibliothèques.
--with-history
: Ce
paramètre active le support de Readline quand xmlcatalog ou xmllint sont lancés en mode
shell.
--with-icu
: ce
paramètre active la prise en charge de ICU, qui fournit une prise en charge étendue
d'Unicode. Cela est nécessaire pour certains paquets dans BLFS,
comme QtWebEngine.
--with-python
PYTHON=/usr/bin/python3
: cette combinaison de
paramètres active les liaisons libxml2 pour Python 3. Remarquez que
ces liaisons sont obsolètes à cause de problèmes dans la conception
de l'API et qu'elles seront supprimées dans libxml2-2.16.