NOM¶
compile_et - Compilateur de table d'erreur
SYNOPSIS¶
compile_et fichier
DESCRIPTION¶
Compile_et convertit une table listant des noms de code d'erreur et les
messages associés en un fichier de sources C utilisable avec la
bibliothèque
com_err(3).
Le nom du fichier source doit se terminer par le suffixe
« .et » ; le fichier consiste en une déclaration
fournissant le nom (jusqu'à quatre caractères) de la table
d'erreurs :
error_table nom
suivie d'au plus 256 entrées de la forme :
error_code nom, "
chaîne "
se terminant par un
end
qui indique la fin de la table.
Le nom de la table sert à construire une fonction
initialize_XXXX_error_table, qui doit être appelée de
façon à ce que la bibliothèque
com_err reconnaisse la
table d'erreurs.
Les différents codes d'erreur sont assignés en incrémentant les
numéros séquentiellement (en démarrant par un numéro
élevé calculé comme une fonction de hachage du nom de la
table) ; ainsi pour des raisons de compatibilité, il est
conseillé de toujours ajouter les nouveaux codes d'erreur à la fin
d'une table existante, et de ne pas supprimer de codes des tables.
Les noms définis dans la table sont placés dans un fichier
d'en-tête C par des directives du préprocesseur qui les
définissent comme des constantes entières pouvant utiliser
jusqu'à 32 bits.
Un fichier de sources C est aussi généré. Il devra être
compilé et lié avec les fichiers objets qui font référence
à ces codes d'erreur ; il contient le texte des messages et la
fonction d'initialisation. Les deux fichiers C ont des noms dérivés
du fichier source d'origine, avec les suffixes « .et »
remplacés par « .c » et « .h ».
Un « # » dans le fichier source est considéré
comme un caractère de commentaire, et le contenu jusqu'à la fin de
la ligne est ignoré.
BOGUES¶
Comme la version originale de
compile_et utilise un analyseur très
simple en
yacc(1), et que cette version de
compile_et utilise
une combinaison de scripts awk/sed, sa gestion des erreurs laisse à
désirer.
VOIR AUSSI¶
com_err(3).
Ken Raeburn, « A Common Error Description Library for UNIX »
(une bibliothèque générique de description d'erreurs pour
UNIX).
TRADUCTION¶
La traduction de cette page de manuel est maintenue par les membres de la liste
<debian-l10n-french AT lists DOT debian DOT org>. Veuillez signaler
toute erreur de traduction par un rapport de bogue sur le paquet
manpages-fr-extra.