[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [linux-team] mix objects from 2 <> compilers



> La remarque comptait donc deux points:
> . si deja g++ et gcc (i.e. le meme compilateur) ont du mal a linker leur propres fichiers objets ensemble (C++ etant un superset de C), je vois mal l'operation reussir entre d'autres compilateurs
Non, parce que mélanger des objets C et C++, ça a une très bonne raison de ne pas marcher:
en C++, les noms des symboles diffèrent de ceux en C (le type des arguments passés aux fonctions est sauvé derrière le nom de la 
fonction, ce qui explique qu'il existe une option -C "demangle" pour nm, afin de "décoder" les noms de symboles C++ en une forme
lisible). Mélanger des objets C++ de compilos différents, c'est une toute autre problématique.
p.ex. quand tu observes les symboles d'un objet généré avec gcc (ou egcs), tu peux tjs trouver un symbole "gcc2_compiled."
pab:/usr/src/packages/BUILD/glib-1.2.0> nm glist.o | grep gcc
00000000 t gcc2_compiled.

c'est ça qui me fait un peu douter...

  -o)  Pascal Bleser        | UNIX *is* user friendly.
  /\\  C++/UNIX Development | It's just selective about
 _\_v  ATOS Payment Systems | who its friends are...
pbleser@atos-group.com---------------------------------
---------
This message was sent by Majordomo 1.94.3. Please repport problems to
manu@rtfm.be. If you want to be deleted from the list, send a mail to
majordomo@rtfm.be with "unsubscribe linux-team" in the body.