[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [linux-team] mix objects from 2 <> compilers
- To: linux-team@rtfm.be
- Subject: Re: [linux-team] mix objects from 2 <> compilers
- From: "Pascal Bleser" <pbleser@atos-group.com>
- Date: Thu, 8 Apr 1999 13:41:27 +1
- Comments: Authenticated sender is <pab@mail>
- Comments: Sender has elected to use 8-bit data in this message. If problems arise, refer to postmaster at sender's site.
- In-reply-to: <>
- Organization: ATOS Payment Systems
- Reply-to: linux-team@rtfm.be
- Sender: owner-linux-team@rtfm.be
> 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.