Probleme de linker PB

SuperCed

Membre expert
Club iGen
20 Juin 2001
1 353
72
46
superced.rb38.eu
J'ai un big probleme avec le linker de Project Builder.
Lorsque je lance le Build, ca me dit :
Build failed (see build log for details)
Donc, il me semble que le build log, ca doit etre le truc en dessous des erreurs.
Je regarde dedant, et je vois plein de truc du style:
/usr/bin/ld: multiple definitions of symbol _BProtocolCode
/Users/cedric/Documents/driver USB OS9 (source) modif/MACOSX/build/intermediates/AppleUSBCDCDriver.build/Objects/ppc/NBCONN.o definition of _BProtocolCode in section (__DATA,__data)
/Users/cedric/Documents/driver USB OS9 (source) modif/MACOSX/build/intermediates/AppleUSBCDCDriver.build/Objects/ppc/SERVICE.o definition of _BProtocolCode in section (__DATA,__data)

Et cela, avec plein de structure de donnees differentes que j'ai definies. Pourtant, je ne declare pas plusieurs fois la structure de donnee BProtocolCode! Je ne la declare qu'une seule fois, dans un Header. Le probleme intervient quand j'essaye de faire un #include"monHeader.h" dans le fichier NBCONN.C ET dans le fichier SERVICE.C . Donc, des que j'ai au moins 2 includes pareil mais dans des fichiers differents, le linker me met cette erreur.

Dans le Header, j'ai bien mis le
#ifndef _MON_HEADER_
#define _MON_HEADER_
// mes structures de donnees
#endif

Mais le linker semble aller plusieur fois sur les types et structures definies car il me dit que la declaration de la structure de donnee est en double.

Heu... help!
confused.gif
 
Ce genre de chose arrive plutot quand le linker tombe sur 2 structures ou objets de meme nom et de constitution différente...

Dans ton cas, je me demande tout simplement si le nom de ta structure ne serait pas déjà utilisée par le système.....

Essaye de lui donner (temporairement) un autre nom, et recompile...
 
Non, quand je changeais le nom, ca le faisait aussi avec le nouveau nom. Maius j'ai regle le probleme, j'ai vire le nom. par contre, j'ai un autre probleme de linker, voir post plus bas.