Bonjour,
j'ai un problème de création de fichier preprocessed(.i) à partir de deux fichiers.
J'ai besoin de faire cette manipulation pour ensuite donner le fichier à une application qui génère l'instrumentation pour la couverture de code de cette application testée.
La version de gcc utilisée est la 3.2.3 ceci venant du fait que c'est une version modifiée pour RTEMS sur une architecture de processeur LEON2.
Donc mon problème est le suivant:
Lors de la création du fichier preprocessed je dois lui fournir le fichier contenant le "main"(Init dans le cas de RTEMS) ainsi que le fichier dont je désire analyser la couverture de code. Le problème est que ces deux fichiers utilise le même include(bsp.h) et lors du preprocessing je me retrouve avec un fichier qui contient deux fois les déclarations des types de cette include, hors fatalement lorsque je transmet ce fichier à Eclipse pour la compilation ils détectent des re déclarations et ne peut donc pas compiler mon code.
Comment faire pour que mon fichier preprocessed ne contienne que une seul fosi le contenu de bsp.h? J'ai recherché dans la doc de gcc mais rien ne semble être destiné à cet effet...
Merci d'avance !
EDIT: J'ai oublié de vous fournir la commande utilisée lors de la création du fichier.
sparc-rtems-gcc -DSTAGE_1 -D_ATTOLCOV -DPREPROC -I. -I/cygdrive/c/cygwin/opt/rtems-4.6/sparc-rtems/leon2/lib/include/ -DVALIDATION ../PKG_BSP/$(PKG_TESTED)/$(UNIT_TESTED).c ../$(MAIN_TESTED).c -E > $(UNIT_TESTED).i
Les variables MAIN_TESTED et UNIT_TESTED parle d'elle même.
Elles définissent le nom du fichier main ainsi que de l'unité testée
------------
Bise Léonard
Syderal SA
Gals, SWITZERLAND
Partager