Edgar Bonet Orozco wrote:
>
> > > [fonctions plusieurs fois définies en C]
> > > gcc -static -o gtksee im_xpm.o [autres .o] -lgdk [autres libs]
> > > et ld râle parce que libgdk.a redéfinit des fonctions déjà définies dans
> > > im_xpm.o.
> >
> > Il rale mais il doit faire l'edition de lien quand meme en prenant
> > la premiere definition (en supposant qu'elles aient la meme signature).
> > Non ?
>
> Je ne crois pas. En tout cas ld renvoie un code de retour de 1 et je
> n'ai pas trouvé l'exécutable. Je mets ci dessous les derniers messages
> affichés lors de la copil.
>
> > J'avais appris que sous unix l'odre dans lequel on precise les
> > librairies n'est pas indiferent ?
>
> Je crois aussi. Le gars a redéfini des fonctions de la bibliothèque dans
> ses sources et ses fichiers objet se trouvent _avant_ la bibliothèque
> dans la ligne de commande de gcc.
>
> Edgar.
Salut,
L'ordre d'apparition des objets sur la ligne de commande peut avoir son
importance... ou pas. C'est ce qu'on appelle le mode "iteratif" (les
anglais disent "incremental"), etl'editeur de lien de linux ne l'est pas
par defaut, il faut lui donner la bonne option (c'est "-i", dans ton
cas, par gcc, ce sera "-Wl,-i")
Ensuite, il te faudra changer l'ordre des deux libs pour faire
disparaitre le message d'erreur (mais il est peut etre deja bon)
A+
Laurent
--
--------------- Laurent Vivier --------------
mailto:Laurent@Vivier.grenoble.hp.com
phone: 04 74 99 32 96 telnet: 769-3296
---------------------------------------------
UNIX is user-friendly...
It's just selective about who its friends are
---------------------------------------------