alxidali
Messages postés97Date d'inscriptionmardi 21 juillet 2009StatutMembreDernière intervention10 octobre 2011
-
16 nov. 2009 à 12:09
uaip
Messages postés1466Date d'inscriptionmardi 20 février 2007StatutMembreDerniè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
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023123 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.
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023123 21 nov. 2009 à 18:02
On va faire cela par étape. Je n'ai pas Windows, mais ça devrait ressembler à cela:
- Créer un répertoire dans C:\ appelé projet.
- Copier Flex.exe, Bison.exe et tous les outils dans ce dossier.
- Copier ton projet dans ce dossier (notamment les fichier *.l et *.y)
- Ouvrir une invite de commande (Windows + R, puis taper cmd).
- Taper: C:
- Taper: cd C:\projet
- Ensuite tenter de compiler:
* Flex.exe fichier.l -olex.c
* Bison.exe fichier.y -o bison.c
* Compiler les fichier *.c (avec ce que tu veux).
alxidali
Messages postés97Date d'inscriptionmardi 21 juillet 2009StatutMembreDernière intervention10 octobre 2011 27 nov. 2009 à 23:11
j'ai installé le Cygwin , et tout marche , pour généré je tappe sous TERMINAL ms-dos "bison -d fichier.y" et j'obtient deux fichier
-fichier.tab.c
-fichier.tab.h
c'est quoi c'est deux fichiers et puis comment terminé le boulot en reliant l'analyse lexicale a l'analyse syntaxique ?
merci .
Vous n’avez pas trouvé la réponse que vous recherchez ?
uaip
Messages postés1466Date d'inscriptionmardi 20 février 2007StatutMembreDernière intervention 7 février 2011 15 déc. 2009 à 00:10
Salut,
Alors autant le préciser tout de suite : je n'ai pas eu le courage de lire après les 3 premières pages du topic, donc je viens peut être après la guerre.
Cela dit, j'ai codé un mini-langage compilable, avec IDE, il y a quelques temps, sous Windows.
Si tu as des questions sur l'utilisation des outils flex/bison sous Windows, je pourrais essayer d'y répondre, dans les limites de ma mémoire.
J'ai mis plusieurs mois avant de tout comprendre, seul, et je comprends que tu galères un peu.
alxidali
Messages postés97Date d'inscriptionmardi 21 juillet 2009StatutMembreDernière intervention10 octobre 2011 17 déc. 2009 à 17:08
j'ai resou le problem j'ai cr un nouveau projet et j'ai ajouté le fichier généré par lex comme header et ca marche tres bien mnt , je commence alors a m'attaquer a l'analyse syntaxique
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023123 18 déc. 2009 à 12:16
Comment faire pour lier tout cela est avoir un analyseur syntaxique pré a l'usage
En gros tu compiles ton code en C++, comme tu le ferais pour un programme normal. Tu ajoutes bien evidemment une classe main qui exploite les fonctions crées par Flex et Bison.
Regarde l'exemple que je t'ai donné, tout est dedans :).
alxidali
Messages postés97Date d'inscriptionmardi 21 juillet 2009StatutMembreDernière intervention10 octobre 2011 16 nov. 2009 à 19:44
je suis vraiment désolé , loin de moi l'idée d'ordonner ou meme de crier , juste que j'ignorai cette clause du reglement , et meme se fut ecrit dans l'urgence de mon probleme sans faire attention . encore désolé , mais aidez moi s'il vous plait
Trouver des informations sur ces outils, demande quelques connaissances d'anglais. Voici tout de même quelques tutoriaux:
http://linuxfr.org/2004/08/26/17106.html
Ce n'est pas une clause du réglement, cette une question de bon sens. C'est "règle" est valable sur tous les supports (mails, chat, forum, articles, etc...), et pas seulement sur ce site.
Une image résume vraiment bien ceci :)
http://www.geekologie.com/2009/09/01/WRITING-IN-CAPS.jpg
alxidali
Messages postés97Date d'inscriptionmardi 21 juillet 2009StatutMembreDernière intervention10 octobre 2011 16 nov. 2009 à 23:09
tres content que vous repondiez je trouve serieusement votre reponse necessaire , mais encore unpeu insufisante car , le probleme en question est que bison apparait et disparait , donc je ne meme pas y ecrire quoi que se soit , et puis les etapes pour debuté et finalisé un projet , et non la documentation sur la syntaxe , car sur papier j'arrive a peu pré a ecrire des code de flex et de bison , mais comment ecrire sur les logiciel en question et terminé un projet et puis enregistré et éxécuté ...en tout cas merci beacoup pour votre reponse comme je le disais elle m'a été tres bénéfique . merci
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023123 16 nov. 2009 à 23:17
Ta demande est assez flou. J'ai du mal a délimiter ton problème. Est-ce un problème de code ou d'utilisation de ces outils ? Peux-tu préciser ta question ?
bison apparait et disparait , donc je ne meme pas y ecrire quoi que se soit
Normalement, tu n'écris pas quand Flex ou Bison te le demande, mais dans un fichier. Ce fichier tu le donnes à Flex ou a Bison, qui va te générer un code en C ou C++.
Regarde donc les liens vers les exemples que je t'ai donné (je parle bien d'exemples et non de tutoriaux ou de documentations). Si tu arrives à faire fonctionner ceux-ci, tu devrais comprendre comment faire fonctionner ton projet.
alxidali
Messages postés97Date d'inscriptionmardi 21 juillet 2009StatutMembreDernière intervention10 octobre 2011 16 nov. 2009 à 23:21
j'avais cru ecrire directement sur flex ou bison , je suis tres content de commencer a comprendre , donc je doit ecrire sur un fichier externe et flex ou bison ne fera que générer le code en c ou c++ , d'accord une premiere information essentiel , mnt le probleme qui se pose et c'est le dernier apres avoir reglé tout les autre je vous en remercie , c'est que supposons que j'ai ecrit un code pour bison , je ne pourrai pas lui proposer car le prompteur apparait et disparait tout de suite ...
alxidali
Messages postés97Date d'inscriptionmardi 21 juillet 2009StatutMembreDernière intervention10 octobre 2011 21 nov. 2009 à 14:22
d'accord j'ai compris le concept maintenant j'ai passé le week-end a etudier flex , maintenant que j'ai préparé mon fichier ".l" je n'arrive pas a généré le code ".c" les options de la ligne de commande sous MS-DOS sont flou et rien ne marche , j'ai meme installé le VI , au cas ou , aidez moi s'il vous plait ...
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023123 21 nov. 2009 à 14:29
Vi n'as rien à voir. C'est juste un éditeur.
Très honnêtement, je ne sais pas le faire sous Windows. Je travaille généralement sous Unix.
Tu as surement des exécutables qui te permettent de le faire. Question bête: as-tu installé ou téléchargé des outils pour compiler du Flex/Bison sous Windows ?
alxidali
Messages postés97Date d'inscriptionmardi 21 juillet 2009StatutMembreDernière intervention10 octobre 2011 21 nov. 2009 à 14:33
eu non , je ne vois pas quoi tu veux parlé , juste flex et bison , c'est tout , en plus je vois sur le net que toute personne qui utilise ces deux utilitaire les utilises sous linux , devrais installé mandriva en plus de mon OS , pour travailler a l'aise avec ?