OPTION du GCC en precompilation

OPTION du GCC en precompilation - C - Programmation

Marsh Posté le 05-06-2006 à 15:23:20    

Bonjour,
 
j'ai un probleme avec les option du GCC.
j'ai un fichier C  

Code :
  1. #include "toto.h"
  2. int main (void)
  3. {
  4. return(1);
  5. }


 
le fichier toto.t inclus different fichier h plus inportant.
Le but de ce programme est de recuperer des valeur definie par de enum et a l'interieure de l' enum il y a des switch de compile
exemple:

Code :
  1. enum { tata,
  2. #ifdef lolo
  3. toto,
  4. #endif
  5. titi
  6. };


 
donc si le switch lolo est defini on obtient : tata=0 toto=1 titi=2
et sinon tata=0 titi=1.
 
avec l'option -E du GCC
on recupere le fichier h precopiler donc vider des ligne inutilent.
 
tous ceci est le contexte.
 
Le probleme est:
 
1er
 les switch de compile sont definis dans un fichier switch.opt avec ce format:

Code :
  1. -Dtoto -Dlulu -Ic:/ici/la/toto.h


le tous sur une ligne
 
2eme
j'utilise la ligne de compilation
gcc -E -include switch.opt -undef -dD mainEmpty.c > precompli.txt
 
mais les switch de compile ne sont pas pris en compte.
 
 
MA QUESTION est:
 
Quelle est la ligne de commandes correcte (si la miene est fause)?
et quelle doit-etre le format du fichier contenant les switchs de compile( si le mien n'est pas bon)?
 
 
 

Reply

Marsh Posté le 05-06-2006 à 15:23:20   

Reply

Marsh Posté le 05-06-2006 à 15:36:13    

-include <fichier interpreter par cpp comme un fichier d'en-tete placer au debut du source>
 

Code :
  1. /*switch.opt*/
  2. #define toto
  3. #define lulu
  4. #include <c:/ici/la/toto.h>

Reply

Marsh Posté le 05-06-2006 à 15:48:33    

je suis d'accor avec toi

Code :
  1. /*switch.opt*/#define toto#define lulu#include <c:/ici/la/toto.h>


mais tu peut ecrire dans la ligne de compilation  
 

Code :
  1. gcc -E -Dtoto -undef -dD mainEmpty.c > precompli.txt


 
Donc tu peut tous les regouper dans un fichier texte pour etre inclus a la compilation.
J'ai environ 856 switchs, et la ligne de commande ne prend que 100 switchs au max.

Reply

Marsh Posté le 05-06-2006 à 16:13:15    

plutot que de faire generer precompli.txt, pourquoi tu ne le fait pas directement ? tes 856 switch tu les recuperes comment ?

Reply

Marsh Posté le 05-06-2006 à 16:39:01    

avec un compilateur modifier sous arm9;
 
le but du programme au final est de recuper des info d'un autre programme en C compiler sou arm9 defini par des macro special.
 
mon outil parse le programme originale et construit dynamiquement les liste des pattern que j'ai trouver

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed