Utiliser flex et bison
Résolu
rourou
-
momo -
momo -
Bonjour,
je suis entrain de réaliser un compilateur.
je dois nécessairement utiliser les outils flex et bison.
j'ai réussi à télécharger ces 2 outils et je m'ai documenté un peu à propos de ces derniers. mais voilà la question qui est très simple : comment dois je faire pour compiler les fichier.lex et .y?
c à d est ce que je dois ouvrir l'executable de flex ou de bison ou l'invite de commnades (pour écrire les commandes ) ou même compiler les fichier avec le compilateur c++?
voilà je suis bloquée et j'ai pas compris comment compiler les fichiers .lex et .y
j'ai beson d'aide, please.
je suis entrain de réaliser un compilateur.
je dois nécessairement utiliser les outils flex et bison.
j'ai réussi à télécharger ces 2 outils et je m'ai documenté un peu à propos de ces derniers. mais voilà la question qui est très simple : comment dois je faire pour compiler les fichier.lex et .y?
c à d est ce que je dois ouvrir l'executable de flex ou de bison ou l'invite de commnades (pour écrire les commandes ) ou même compiler les fichier avec le compilateur c++?
voilà je suis bloquée et j'ai pas compris comment compiler les fichiers .lex et .y
j'ai beson d'aide, please.
A voir également:
- Flex-bison download
- Microsoft store download - Guide
- Word 2013 free download - Télécharger - Traitement de texte
- Canva download - Télécharger - Divers Photo & Graphisme
- Télécharger music mp3 gratuit download pc - Télécharger - Conversion & Extraction
- Direct download - Accueil - Outils
4 réponses
salut
j'attends une réponse.
je souffre.
une réponse SVP.
j'ai une autre question : flex et bison sont à utiliser pour un système Unix ou Windows?
j'attends une réponse.
je souffre.
une réponse SVP.
j'ai une autre question : flex et bison sont à utiliser pour un système Unix ou Windows?
recherche
bison mingw
flex mingw
done
http://cobcurses.wiki.sourceforge.net/Install-MinGW-bison
http://cobcurses.wiki.sourceforge.net/Installing-MinGW-flex
ça a l'air pas mal
bison mingw
flex mingw
done
http://cobcurses.wiki.sourceforge.net/Install-MinGW-bison
http://cobcurses.wiki.sourceforge.net/Installing-MinGW-flex
ça a l'air pas mal
bonjour
Enfin j'ai arrivé à faire tourner corretement l'exemple. bon j'ai réinstallé une autre version de flex (qui dispose de la librairie libfl.a). et ça marche très bien.
pour ton support et tes précieuses conseils je veux te dire mille mercis. tu m'as soulagée et suis très reconnaissante.
Merci.
Enfin j'ai arrivé à faire tourner corretement l'exemple. bon j'ai réinstallé une autre version de flex (qui dispose de la librairie libfl.a). et ça marche très bien.
pour ton support et tes précieuses conseils je veux te dire mille mercis. tu m'as soulagée et suis très reconnaissante.
Merci.
Bonjour j'adresse la parole pour tous qui ont éprouvé des difficultés lors de l'excecution de l'exemple de la calculatrice sous windows et non Unix.
cet exemple est situé à cette page : http://www.linux-france.org/article/devl/lexyacc/minimanlexyacc-4.html
1) vous devez télécharger n'impote quel version de bison
2) vous devez télécharger la version Flex se trouvant à cette page : https://sourceforge.net/projects/gnuwin32/files/flex/
3) vous devez télécharger MinGW : pour télécharger gcc qui sera utilisé ultérieurement
4)pour compiler l'exemple et faire dégager l'éxcecutable, vous devez saisir sous l'invite de commandes (sous Windows)
bison -d calc.y
// au lieu de saisir commande bison tout court vous devez saisir tout le chemin d'accès conduisant à l'emplacement de bison par exemple : "C:/LexYacc/Bison/bin/bison.exe" -d calc.y
de même pour le reste des commandes flex et gcc sans oublier l'extension .exe
move calc.tab.h calc.h
move calc.tab.c calc.y.c
flex calc.lex
move lex.yy.c calc.lex.c
gcc -c calc.lex.c -o calc.lex.o
gcc -c calc.y.c -o calc.y.o
gcc -o calc calc.lex.o calc.y.o -lfl
j'espère que ça sera bien facile à comprendre et à l'appliquer.
cet exemple est situé à cette page : http://www.linux-france.org/article/devl/lexyacc/minimanlexyacc-4.html
1) vous devez télécharger n'impote quel version de bison
2) vous devez télécharger la version Flex se trouvant à cette page : https://sourceforge.net/projects/gnuwin32/files/flex/
3) vous devez télécharger MinGW : pour télécharger gcc qui sera utilisé ultérieurement
4)pour compiler l'exemple et faire dégager l'éxcecutable, vous devez saisir sous l'invite de commandes (sous Windows)
bison -d calc.y
// au lieu de saisir commande bison tout court vous devez saisir tout le chemin d'accès conduisant à l'emplacement de bison par exemple : "C:/LexYacc/Bison/bin/bison.exe" -d calc.y
de même pour le reste des commandes flex et gcc sans oublier l'extension .exe
move calc.tab.h calc.h
move calc.tab.c calc.y.c
flex calc.lex
move lex.yy.c calc.lex.c
gcc -c calc.lex.c -o calc.lex.o
gcc -c calc.y.c -o calc.y.o
gcc -o calc calc.lex.o calc.y.o -lfl
j'espère que ça sera bien facile à comprendre et à l'appliquer.
Bonjour TLa
je suis bien reconnaissante por ton aide et soutien.
Mais j'ai d'autreS questions à propos de Lex et Yacc. Si tu peux m'orienter encore une fois.
comment faire tourner lex tout seul c-a-d comment faire tourner un analyseur lexical tout seul sans obligatoirement passer par l'analyse syntaxique.
une deuxieme question si tu permet : comment fournir un fichier contenent le coude source à analyser au programme (lex et yacc)?
TLa, je compte sur toi mon ami(e).
je suis bien reconnaissante por ton aide et soutien.
Mais j'ai d'autreS questions à propos de Lex et Yacc. Si tu peux m'orienter encore une fois.
comment faire tourner lex tout seul c-a-d comment faire tourner un analyseur lexical tout seul sans obligatoirement passer par l'analyse syntaxique.
une deuxieme question si tu permet : comment fournir un fichier contenent le coude source à analyser au programme (lex et yacc)?
TLa, je compte sur toi mon ami(e).
est ce que vous pouvez me renseigner sur la version windows de lex? cette version est elle appelée lex ou flex ?
merci.
en utilisant cygwin, tu aurra un gcc, g++, du flex, du bison ...
http://cygwin.com/cgi-bin2/package-grep.cgi?grep=bison
bon je me suis débrouillée et j'ai réussi à compiler un premier exemple avec flex et bison. j'ai suivi à la lettre l'exemple figurant dans ce lien http://www.linux-france.org/article/devl/lexyacc/minimanlexyacc-4.html
et comment dire ?
j'ai saisis toutes ces lingnes de commandes
>bison -d calc.y
>mv calc.tab.h calc.h
>mv calc.tab.c calc.y.c
>flex calc.lex
>mv lex.yy.c calc.lex.c
>gcc -c calc.lex.c -o calc.lex.o
>gcc -c calc.y.c -o calc.y.o
>gcc -o calc calc.lex.o calc.y.o -ll -lm [eventuellement -lfl]
tout va bien sauf la dernière ligne de commande un message d'erreur est tjrs affiché :
connot find -lfl ou bien connot find -ll
quoi faire ? sachant que dans cette page http://www.linux-france.org/article/devl/lexyacc/minimanlexyacc-4.html l'auteur a mentionné la phrase suivante : "Il suffit alors de compiler, sans oublier de linker avec la librairie mathématique ("-lm") et la librairie spéciale Lex ("-ll"). "
" est ce que je dois télecharger qql chose dll ou autre?
si tu m'envois une rèponse je serais fortement reconnaissante.
merci TLa pour ton support.
sur quoi tu execute ces commandes ?
si c'est cygwin, il te faut le package flex/flex-2.5.33-1 :
http://cygwin.com/cgi-bin2/package-cat.cgi?file=flex%2Fflex-2.5.33-1
qui te fourni : /usr/lib/libfl.a
et
gcc -o calc calc.lex.o calc.y.o -ll -lfl
devrait alors fonctionner
j'utilise plutôt MinGW.