10.17. Ncurses-5.9

Le paquet Ncurses contient les bibliothèques de gestion des écrans type caractère, indépendant des terminaux.

10.17.1. Installation de Ncurses

Le correctif suivant incorpore les mises à jour de la branche 5.9 issue des développeurs de Ncurses :

patch -Np1 -i ../ncurses-5.9-branch_update-4.patch

Préparez la compilation de Ncurses :

./configure --prefix=/usr --libdir=/lib \
    --with-shared --without-debug --enable-widec \
    --with-manpage-format=normal \
    --with-default-terminfo-dir=/usr/share/terminfo

Compilez le paquet :

make

Ce paquet a une suite de tests qu'on peut lancer après avoir installé le paquet. Les tests se trouvent dans le répertoire test/. Voir le fichier README de ce répertoire pour les détails.

Installez le paquet :

make install

Déplacez les bibliothèques statiques de Ncurses au bon endroit :

mv -v /lib/lib{panelw,menuw,formw,ncursesw,ncurses++w}.a /usr/lib

Créez des liens symboliques dans /usr/lib:

rm -v /lib/lib{ncursesw,menuw,panelw,formw}.so
ln -svf ../../lib/libncursesw.so.5 /usr/lib/libncursesw.so
ln -svf ../../lib/libmenuw.so.5 /usr/lib/libmenuw.so
ln -svf ../../lib/libpanelw.so.5 /usr/lib/libpanelw.so
ln -svf ../../lib/libformw.so.5 /usr/lib/libformw.so

Maintenant, nous allons rendre notre Ncurses compatible pour que les vieux programmes non compatibles avec widec se construisent correctement :

for lib in curses ncurses form panel menu ; do
        echo "INPUT(-l${lib}w)" > /usr/lib/lib${lib}.so
        ln -sfv lib${lib}w.a /usr/lib/lib${lib}.a
done
ln -sfv libncursesw.so /usr/lib/libcursesw.so
ln -sfv libncursesw.a /usr/lib/libcursesw.a
ln -sfv libncurses++w.a /usr/lib/libncurses++.a
ln -sfv ncursesw5-config /usr/bin/ncurses5-config

Maintenant, nous allons créer un lien symbolique pour /usr/share/terminfo dans /usr/lib pour des questions de compatibilité :

ln -sfv ../share/terminfo /usr/lib/terminfo

10.17.2. Contenu de Ncurses

Programmes installés: captoinfo (lien vers tic), clear, infocmp, infotocap (lien vers tic), ncursesw5-config, reset (lien vers tset), tabs, tic, toe, tput et tset
Bibliothèques installées: libcursesw.so (link to libncursesw.so), libformw.[a,so] et libpanelw.[a,so]
Répertoires installés: /usr/share/tabset, /usr/share/terminfo

Descriptions courtes

captoinfo

Convertit une description termcap en description terminfo

clear

Vide l'écran, si possible

infocmp

Compare ou affiche des descriptions terminfo

infotocap

Convertit une description terminfo en description termcap

ncursesw5-config

Fournit des informations de configuration de ncurses

reset

Réinitialise un terminal à ses valeurs par défaut

tabs

Initialise et vide des taquets de tab sur un terminal

tic

Le compilateur entrée-description qui traduit un fichier terminfo à partir du format source en format binaire requis pour les routines de la bibliothèque ncurses. Un fichier terminfo contient des informations sur les possibilités d'un terminal donné

toe

Liste tous les types de terminaux disponibles, en donnant leur nom primaire et leur description

tput

Rend disponibles les fonctionalités dépendantes du terminal pour le shell ; il peut aussi être utilisé pour réinitialiser ou paramétrer un terminal ou d'afficher son nom long

tset

Peut être utilisé pour initialiser des terminaux

libcursesw

Un lien vers libncursesw

libncursesw

Contient des fonctions pour afficher du texte de façons complexes sur un écran de terminal ; un bon exemple d'utilisation de ces fonctions est le menu affiché par le make menuconfig du noyau

libformw

Contient des fonctions pour implémenter des formulaires

libmenuw

Contient des fonctions pour implémenter des menus

libpanelw

Contient des fonctions pour implémenter des panneaux