Comment générer les fichier y.tab.h et y.tab.c? [Résolu]

jihado86
Messages postés
13
Date d'inscription
samedi 25 avril 2009
Dernière intervention
28 mai 2009
- 20 mai 2009 à 17:43 - Dernière réponse : cptpingu
Messages postés
3829
Date d'inscription
dimanche 12 décembre 2004
Dernière intervention
5 novembre 2018
- 20 mai 2009 à 18:22
Comment générer les fichier y.tab.h et y.tab.c à partir de Yacc?
Afficher la suite 

Votre réponse

7 réponses

Meilleure réponse
cptpingu
Messages postés
3829
Date d'inscription
dimanche 12 décembre 2004
Dernière intervention
5 novembre 2018
- 20 mai 2009 à 17:50
3
Merci
Je n'utilise pas Lex/Yacc, mais Flex/Bison (qui sont leur équivalent
libre). Je suppose donc que ça fonctionne de la même manière.
Pour compiler j'utilise ces commandes:

Soit le fichier truc.l et le fichier truc.y

bison --report=all truc.y -o parse.c
flex -olex.c truc.l
g++ -Wall -W parse.c lex.c -o executable

Tu noteras sur la deuxième ligne que "-o" et "lex.c" sont "collés" c'est fait exprès.
Chez moi, ça génère tout ce qu'il faut, et compile mon mini projet.

Merci cptpingu 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 94 internautes ce mois-ci

Commenter la réponse de cptpingu
jihado86
Messages postés
13
Date d'inscription
samedi 25 avril 2009
Dernière intervention
28 mai 2009
- 20 mai 2009 à 17:56
0
Merci
merci mais MSDOS n'a pas reconnu --report=all et g++..

sachant que j'utilise moi aussi flex et bison
Commenter la réponse de jihado86
cptpingu
Messages postés
3829
Date d'inscription
dimanche 12 décembre 2004
Dernière intervention
5 novembre 2018
- 20 mai 2009 à 17:58
0
Merci
g++ c'est normal, c'est sous Unix. Remplace g++ ou gcc, par ton compilateur.
le "--report=all" n'est pas indispensable, tu peux le retirer.
Commenter la réponse de cptpingu
jihado86
Messages postés
13
Date d'inscription
samedi 25 avril 2009
Dernière intervention
28 mai 2009
- 20 mai 2009 à 18:02
0
Merci
j'arrive pas à savoir mon compilateur
je travaille sur windows XP avec microsoft visual C++
Commenter la réponse de jihado86
cptpingu
Messages postés
3829
Date d'inscription
dimanche 12 décembre 2004
Dernière intervention
5 novembre 2018
- 20 mai 2009 à 18:05
0
Merci
Deux solutions:
- Soit tu le fait en ligne de commande: il faut que tu cherches le nom du compilo (je le connais pas désolé)
- Soit tu le fais dans visual studio, et tu dois alors sûrement pouvoir spécifier ta propre ligne de compilation.

Je n'ai jamais fait de Flex/Bison sous Windows, je vais avoir dû mal à t'aider pour toutes les manipulations un peu spécifique à cet OS.
Commenter la réponse de cptpingu
jihado86
Messages postés
13
Date d'inscription
samedi 25 avril 2009
Dernière intervention
28 mai 2009
- 20 mai 2009 à 18:07
0
Merci
en tout cas je te remercie et j'accepte ta reponse
Commenter la réponse de jihado86
cptpingu
Messages postés
3829
Date d'inscription
dimanche 12 décembre 2004
Dernière intervention
5 novembre 2018
- 20 mai 2009 à 18:22
0
Merci
Si tu n'es pas obligé de le faire avec Visual Studio, alors tu peux essayer d'installer MinGw, la source suivante propose un fichier "compile.bat", dont tu pourrais essayer de t'inspirer.

http://www.cppfrance.com/codes/921-TECTION-USAGE-VARIABLES-CODE-CPLUSPLUS-AVEC-LEX_20918.aspx
Commenter la réponse de cptpingu

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.