FLEX /LEX BISON/YACC

Résolu
alxidali Messages postés 97 Date d'inscription mardi 21 juillet 2009 Statut Membre Dernière intervention 10 octobre 2011 - 16 nov. 2009 à 12:09
uaip Messages postés 1466 Date d'inscription mardi 20 février 2007 Statut Membre Dernière intervention 7 février 2011 - 13 mars 2010 à 11:20
JE CHERCHE A COMMENC2 AVEC CES DEUX LOGICIEL FLEX ET BISON POUR GENERER DEUX ANALYSEUR , L'OUTIL FLEX APPARAIT EN PROMPTEUR DOS MAIS JE NE SAIS PAS QUOI Y ECRIRE NI COMMENT EXECUT2 OU VERIFIE OU MEME RECUPERER MON ANALYSEUR APRES AVOIR FINIS , POUR BISON LE PROMPTEUR APPARAIT ET DISPARRAIT TOUT SUITE PAS MOYEN DE TRAVAILLER DESSUS ,.. MON PROBLEME N4EST PAS LA SYNTAXE DES LOGICIEL J4AI LA DOCUMENTATION ET SUR PAPIER JE COMENCE A TRAVAILLER ? MON PROBLEME C4EST LA MANIPULATION ET L4EXECUTION LA VERIFICATION ET L'ENREGISTREMENT . JE VOUDRAI AVOIR LES ETAPES A SUIVRE POUR AVOIR MES ANALYSEUR ? PUIS COMMENT LES INTEGRE A UN IDE POUR FAIRE UN LOGICIEL DE TRADUCTION , MERCI A TOUS
A voir également:

96 réponses

cptpingu Messages postés 3838 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 17 juin 2024 124
16 nov. 2009 à 23:32
Je t'invite vraiment à lire la documentation ou les tutoriaux, c'est vraiment une réponse que tu aurais pu trouver dedans.

Voici un exemple, pour flex. Je suis sous unix, donc mon exemple est pour unix, mais à part les options de la ligne de commande, tout devrait être identique sous Windows:
- Ecrire le code dans un fichier (.l pour flex, .y pour bison, par convention)
- Générer le code C/C++: Taper dans un terminal flex fichier.l -o fichier.c
- Générer le code C/C++: Taper dans un terminal bison fichier.y -o fichier2.c
- Générer le code C/C++: Taper dans un terminal gcc -W -Wall fichier1.c fichier2.c -o prog

Sous Windows, je n'ai jamais essayé, mais je pense qu'il suffit de remplacer flex par flex.exe, et bison par bison.exe, en étant dans le bon répertoire.
L'utilisation d'un fichier .bat, devrait être possible si tu ne veux pas tout faire dans un terminal.
3
Rejoignez-nous