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.