Estimation du temps de construction: 1 minute Estimation de l'espace disque requis: 3 MB |
Installez Bison en exécutant les commandes suivantes:
./configure --prefix=/usr \ --datadir=/usr/share/bison && make && make install |
Quelques programmes ne reconnaissent pas bison et essaient de trouver le programme yacc -- bison est une (bonne) alternative à yacc --. Donc pour satisfaire ces quelques programmes nous allons créer un script yacc qui appelle bison et fait que celui-ci imite les conventions de nom des fichiers de sortie de yacc.
Créer un nouveau fichier /usr/bin/yacc en exécutant ce qui suit
cat > /usr/bin/yacc << "EOF" #!/bin/sh # Début /usr/bin/yacc exec /usr/bin/bison -y "$@" # Fin /usr/bin/yacc EOF chmod 755 /usr/bin/yacc |
--datadir=/usr/share/bison: cela installe les fichiers de grammaire de bison dans /usr/share/bison plutôt que dans /usr/share.
Le package Bison contient le programme bison.
Bison est un générateur d'analyse syntaxique, en remplacement de YACC. YACC signifie Encore un Autre Compilateur de Compilateurs (Yet Another Compiler Compiler). Qu'est-ce que Bison alors ? C'est un programme qui génère un programme qui analyse la structure d'un fichier texte. Au lieu d'écrire le programme, l'utilisateur spécifie comment les choses doivent être reliées et, avec ces règles, un programme est construit pour analyser le fichier texte.
Il y a de nombreux exemples où une structuration est nécessaire, l'un d'eux est une calculatrice.
Soit la chaine :
1 + 2 * 3
Un humain peut facilement arriver au résultat de 7. Pourquoi ? A cause de la structure. Notre cerveau sait comment interpréter la chaîne. L'ordinateur ne le sait pas, et Bison est un outil pour l'aider à comprendre cela, en présentant la chaîne sous la forme suivante au compilateur :
+
/ \
* 1
/ \
2 3
En commençant en bas de l'arbre, et en arrivant aux nombres 2 et 3, qui sont liés par un symbole de multiplication, l'ordinateur multiplie 2 par 3. Le résultat de cette multiplication est mémorisé et la chose suivante que l'ordinateur voit est le résultat de 2*3 et le nombre 1 qui sont reliés par le symbole d'addition. L'ajout de 1 au résultat précédent donne 7. En calcul, les opérations les plus complexes peuvent être exprimées sous ce format d'arbre, et l'ordinateur commence simplement en bas, et travaille en cheminant vers le haut, pour arriver à la réponse correcte. Bien entendu, Bison n'est pas utilisé uniquement pour les calculatrices.
Bison-1.28 nécessite l'installation de :
sh du package bash
ar du package binutils
as du package binutils
ld du package binutils
cmp du package diffutils
rm du package fileutils
cp du package fileutils
mkdir du package fileutils
ls du package fileutils
chmod du package fileutils
mv du package fileutils
ln du package fileutils
cc du package gcc
grep du package grep
make du package make
sed du package sed
basename du package sh-utils
expr du package sh-utils
sleep du package sh-utils
tr du package textutils
cat du package textutils