Bibliothèques Xorg

Introduction à Xorg Libraries

Les bibliothèques Xorg fournissent des routines de bibliothèque utilisées dans touts les applications X Window.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Informations sur le paquet

Dépendances de Xorg Libraries

Requises

Fontconfig-2.14.0 et libxcb-1.15

Facultatives

asciidoc-10.2.0, xmlto-0.0.28 avec au moins un des suivants : fop-2.7, Links-2.27, Lynx-2.8.9rel.1, et W3m (pour générer la documentation supplémentaire en PDF ou texte pour le paquet libXfont).

Recommandées à l'exécution

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

Téléchargement des bibliothèques Xorg

Tout d'abord, créez une liste des fichiers à télécharger. Ce fichier sera utilisé également pour vérifier l'intégrité des téléchargements après leur accomplissement :

cat > lib-7.md5 << "EOF"
ce2fb8100c6647ee81451ebe388b17ad  xtrans-1.4.0.tar.bz2
6b20033f88f0be3d870449c47f1e10a8  libX11-1.8.1.tar.xz
f5b48bb76ba327cd2a8dc7a383532a95  libXext-1.3.4.tar.bz2
4e1196275aa743d6ebd3d3d5ec1dff9c  libFS-1.0.8.tar.bz2
76d77499ee7120a56566891ca2c0dbcf  libICE-1.0.10.tar.bz2
87c7fad1c1813517979184c8ccd76628  libSM-1.2.3.tar.bz2
eeea9d5af3e6c143d0ea1721d27a5e49  libXScrnSaver-1.2.3.tar.bz2
b122ff9a7ec70c94dbbfd814899fffa5  libXt-1.2.1.tar.bz2
ac774cff8b493f566088a255dbf91201  libXmu-1.1.3.tar.bz2
6f0ecf8d103d528cfc803aa475137afa  libXpm-3.5.13.tar.bz2
c1ce21c296bbf3da3e30cf651649563e  libXaw-1.0.14.tar.bz2
86f182f487f4f54684ef6b142096bb0f  libXfixes-6.0.0.tar.bz2
3fa0841ea89024719b20cd702a9b54e0  libXcomposite-0.4.5.tar.bz2
802179a76bded0b658f4e9ec5e1830a4  libXrender-0.9.10.tar.bz2
4cdd1886fe5cce6f68554296edb46db8  libXcursor-1.2.1.tar.xz
e3f554267a7a04b042dc1f6352bd6d99  libXdamage-1.1.5.tar.bz2
6447db6a689fb530c218f0f8328c3abc  libfontenc-1.1.4.tar.bz2
bdf528f1d337603c7431043824408668  libXfont2-2.0.5.tar.bz2
5004d8e21cdddfe53266b7293c1dfb1b  libXft-2.3.4.tar.bz2
74055672a111a98ce2841d2ec4057b05  libXi-1.8.tar.bz2
0d5f826a197dae74da67af4a9ef35885  libXinerama-1.1.4.tar.bz2
18f3b20d522f45e4dadd34afb5bea048  libXrandr-1.5.2.tar.bz2
e142ef0ed0366ae89c771c27cfc2ccd1  libXres-1.2.1.tar.bz2
ef8c2c1d16a00bd95b9fdcef63b8a2ca  libXtst-1.2.3.tar.bz2
210b6ef30dda2256d54763136faa37b9  libXv-1.0.11.tar.bz2
11a358e7229fa28dc9801c1e64fe2e18  libXvMC-1.0.13.tar.xz
0ddeafc13b33086357cfa96fae41ee8e  libXxf86dga-1.1.5.tar.bz2
298b8fff82df17304dfdb5fe4066fe3a  libXxf86vm-1.1.4.tar.bz2
d2f1f0ec68ac3932dd7f1d9aa0a7a11c  libdmx-1.1.4.tar.bz2
b34e2cbdd6aa8f9cc3fa613fd401a6d6  libpciaccess-0.16.tar.bz2
dd7e1e946def674e78c0efbc5c7d5b3b  libxkbfile-1.1.0.tar.bz2
42dda8016943dc12aff2c03a036e0937  libxshmfence-1.3.tar.bz2
EOF

Pour télécharger les fichiers nécessaires en utilisant wget, utilisez les commandes suivantes :

mkdir lib &&
cd lib &&
grep -v '^#' ../lib-7.md5 | awk '{print $2}' | wget -i- -c \
    -B https://www.x.org/pub/individual/lib/ &&
md5sum -c ../lib-7.md5

Installation de Xorg Libraries

[Note]

Note

Pour l'installation de paquets multiples dans un script, les installations doivent être faites en tant qu'utilisateur root. Il y a trois options générales qui peuvent être utilisées pour faire cela :

  1. Lancer le script entièrement en tant qu'utilisateur root (pas recommandé).

  2. Use the sudo command from the Sudo-1.9.11p3 package.

  3. Use su -c "command arguments" (guillemet requis) qui demandera le mot de passe root à chaque itération de la boucle.

Une façon de gérer cette situation est de créer une petite fonction bash qui sélectionne automatiquement la méthode appropriée. Une fois que la commande est initialisée dans l'environnement, il n'est plus nécessaire de le refaire.

as_root()
{
  if   [ $EUID = 0 ];        then $*
  elif [ -x /usr/bin/sudo ]; then sudo $*
  else                            su -c \\"$*\\"
  fi
}
export -f as_root

Certaines bibliothèques ont des suites de tests. Si vous souhaitez les lancer, soit commentez le rm -rf ... suivant, pour que, après l'installation de toutes les bibliothèques, vous puissiez aller dans le répertoire correspondant et lancer make check, ou pour des constructions individuelles, lancer les tests pour chacun de ceux distribués avec une suite de tests fonctionnelle. Autrement, vous pouvez dé-commenter la ligne #make check ..., et à la fin, vérifier les résultats des tests avec :

grep -A9 summary *make_check.log

Les développeurs de BLFS ont confirmé que libX11, libXt et libxshmfence sont distribués avec des suites de tests qui fonctionnent.

Tout d'abord, démarrez un sous-shell d'où on sortira en cas d'erreur :

bash -e

Installez tous les paquets en exécutant les commandes suivantes :

for package in $(grep -v '^#' ../lib-7.md5 | awk '{print $2}')
do
  packagedir=${package%.tar.?z*}
  tar -xf $package
  pushd $packagedir
  docdir="--docdir=$XORG_PREFIX/share/doc/$packagedir"
  case $packagedir in
    libXfont2-[0-9]* )
      ./configure $XORG_CONFIG $docdir --disable-devel-docs
    ;;

    libXt-[0-9]* )
      ./configure $XORG_CONFIG $docdir \
                  --with-appdefaultdir=/etc/X11/app-defaults
    ;;

    libX11-* )
      ./configure $XORG_CONFIG --disable-thread-safety-constructor
    ;;

    * )
      ./configure $XORG_CONFIG $docdir
    ;;
  esac
  make
  #make check 2>&1 | tee ../$packagedir-make_check.log
  as_root make install
  popd
  rm -rf $packagedir
  as_root /sbin/ldconfig
done

Enfin, quittez le shell démarré tout à l'heure :

exit

Explication des commandes

./configure $XORG_CONFIG --disable-thread-safety-constructor : cela corrige un bogue dans (au moins) XFCE à l'exécution.

--disable-devel-docs : Désactive la génération de la documentation texte dans le paquet libXfont2 si xmlto-0.0.28 est installé sans navigateur de texte. Omettre ce paramètre (ou la condition case entière) si un navigateur de texte est installé.

--with-fop : Utiliser fop-2.7 pour générer la documentation PDF (seulement pour le paquet libXfont).

Configuration des bibliothèques Xorg

Si vous avez choisi d'installer Xorg dans /usr, aucune configuration supplémentaire n'est nécessaire et vous pouvez passer le reste de cette section. Si vous avez opté pour un préfixe alternatif, vous devriez créer deux liens symboliques pour satisfaire l'environnement attendu de plusieurs paquets. Exécutez les commandes suivantes en tant qu'utilisateur root :

ln -sv $XORG_PREFIX/lib/X11 /usr/lib/X11 &&
ln -sv $XORG_PREFIX/include/X11 /usr/include/X11

Contenu

Programmes installés: cxpm et sxpm
Bibliothèques installées: libdmx.so, libfontenc.so, libFS.so, libICE.so, libpciaccess.so, libSM.so, libX11.so, libXaw6.so, libXaw7.so, libXaw.so, libXcomposite.so, libXcursor.so, libXdamage.so, libXext.so, libXfixes.so, libXfont2.so, libXft.so, libXinerama.so, libXi.so, libxkbfile.so, libXmu.so, libXmuu.so, libXpm.so, libXrandr.so, libXrender.so, libXRes.so, libxshmfence.so, libXss.so, libXt.so, libXtst.so, libXvMC.so, libXvMCW.so, libXv.so, libXxf86dga.so et libXxf86vm.so
Répertoires installés: $XORG_PREFIX/include/X11/fonts, $XORG_PREFIX/include/X11/Xtrans, $XORG_PREFIX/share/doc/libFS, $XORG_PREFIX/share/doc/libICE, $XORG_PREFIX/share/doc/libSM, $XORG_PREFIX/share/doc/libX11, $XORG_PREFIX/share/doc/libXaw, $XORG_PREFIX/share/doc/libXext, $XORG_PREFIX/share/doc/libXi, $XORG_PREFIX/share/doc/libXmu, $XORG_PREFIX/share/doc/libXrender, $XORG_PREFIX/share/doc/libXt, $XORG_PREFIX/share/doc/libXtst, $XORG_PREFIX/share/doc/libXvMC, $XORG_PREFIX/share/doc/xtrans and $XORG_PREFIX/share/X11/locale

Descriptions courtes

cxpm

vérifie le format d'un fichier XPM

sxpm

affiche un fichier XPM et convertit des fichiers XPM 1 ou 2 en XPM 3

libdmx.so

est la bibliothèque d'extension X Window System DMX (Distributed Multihead X)

libfontenc.so

est la bibliothèque d'encodage des polices X11

libFS.so

est l'interface de la bibliothèque pour le serveur de police X

libICE.so

est la bibliothèque X Inter Clients Exchange

libpciaccess.so

est la bibliothèque pour l'accès PCI générique pour X

libSM.so

est la bibliothèque de gestion d'une session X

libX11.so

est la bibliothèque Xlib

libXaw6.so

est la bibliothèque X Athena Widgets, version 6

libXaw7.so

est la bibliothèque X Athena Widgets, version 7

libXaw.so

sont des liens symboliques vers la bibliothèque actuelle X Athena Widgets, version 7

libXcomposite.so

est la bibliothèque X Composite

libXcursor.so

est la bibliothèque de gestion du curseur X

libXdamage.so

est la bibliothèque X Damage

libXext.so

est la bibliothèque Misc X Extension

libXfixes.so

fournit des versions supérieures des requêtes du cœur du protocole

libXfont2.so

est la bibliothèque de polices X

libXft.so

est la bibliothèque interface de X FreeType

libXinerama.so

est la bibliothèque Xinerama

libXi.so

est la bibliothèque d'extension X Input

libxkbfile.so

est la bibliothèque xkbfile

libXmu.so

est la bibliothèque d'interface X pour des utilitaires supplémentaires qui ne font pas partie de la Xlib standard

libXmuu.so

est la bibliothèque Mini Xmu

libXpm.so

est la bibliothèque X Pixmap

libXrandr.so

est la bibliothèque d'extension de X pour le redimensionnement, la rotation et la symétrie

libXrender.so

est la bibliothèque X de rendu

libXRes.so

est la bibliothèque du client d'extension des ressources X

libxshmfence.so

place une API d'événements au dessus des futexes Linux

libXss.so

est la bibliothèque d'extension du client X11 de l'économiseur d'écran

libXt.so

est la bibliothèque X Toolkit

libXtst.so

est la bibliothèque Xtst

libXvMC.so

est la bibliothèque de compensation de mouvement de X-Video

libXvMCW.so

est l'enveloppe XvMC incluant l'extension VLD non standard

libXv.so

est la bibliothèque d'extension du système X Window

libXxf86dga.so

est la bibliothèque du client pour l'extension XFree86-DGA

libXxf86vm.so

est la bibliothèque du client pour l'extension XFree86-VidMode X

Last updated on