Problème de compilation

Signaler
Messages postés
39
Date d'inscription
vendredi 24 janvier 2003
Statut
Membre
Dernière intervention
12 janvier 2006
-
Messages postés
39
Date d'inscription
vendredi 24 janvier 2003
Statut
Membre
Dernière intervention
12 janvier 2006
-
j'ai une errreur LNK4006 (car j'ai mis /FORCE dans les paramètres de compilation)
mes fichiers ont cette structure :
--> copieress.cpp
#include "copieress.h"
... code

--> cmdsystem.cpp
#include "cmdsystem.h"
... code

--> lestraces.cpp
#include "lestraces.h"
... code

--> global.cpp
#ifndef _GLOBAL_H
#define _GLOBAL_H
#include
#include <windows.h>
#include <stdio.h>
#include <time.h>
#include <lm.h>
#include <Lmat.h>
#include
#include <sys\stat.h>
#include <mbstring.h>
... definitions
#endif

--> copieress.h
#ifndef _COPIERESS_H
#define _COPIERESS_H
#include "global.h"
#include "cmdsystem.h"
#include "lestraces.h"
... definitions
#endif

--> cmdsystem.h
#ifndef _CMDSYSTEM_H
#define _CMDSYSTEM_H
#include "global.h"
#include "lestraces.h"
... definitions
#endif

--> lestraces.h
#ifndef _LESTRACES_H
#define _LESTRACES_H
#include "global.h"
... definitions
#endif

mon message d'erreur est le suivant :
copieress.obj : warning LNK4006: "char * LHeureDeDuplicationDeLaRessource" (?LHeureDeDuplicationDeLaRessource@@3PADA) already defined in cmdsystem.obj; second definition ignored

LHeureDeDuplicationDeLaRessource est définie dans le global.h (fichier de variables globales) et tous mes .cpp en ont besoin

Je pense que j'ai dut oublier quelque chose pour éviter la redéfinition des variables

merci pour vos conseils

3 réponses

Messages postés
39
Date d'inscription
vendredi 24 janvier 2003
Statut
Membre
Dernière intervention
12 janvier 2006

j'ai mis devant mes déclarations de variables : extern
j'ai aussi enlevé /FORCE
maintenant j'ai l'erreur suivante :
cmdsystem.obj : error LNK2001: unresolved external symbol "char * LeNomDuPDC" (?LeNomDuPDC@@3PADA)

jepense que je doit modifier des paramètres de compilation mais lesquels ?
Messages postés
39
Date d'inscription
vendredi 24 janvier 2003
Statut
Membre
Dernière intervention
12 janvier 2006

j'ai oublié char * LeNomDuPDC est défini dans global.h
sous la forme :
extern char LeNomDuPDC[LaLongueur64];
Messages postés
39
Date d'inscription
vendredi 24 janvier 2003
Statut
Membre
Dernière intervention
12 janvier 2006

et sans extern ça me donne :
copieress.obj : error LNK2005: "char * LeNomDuPDC" (?LeNomDuPDC@@3PADA) already defined in cmdsystem.obj