Version of shared libs Vs Name mangling.

Ajay Bansal Ajay_Bansal@infosys.com
Thu Mar 6 07:10:00 GMT 2003


Hi All

Pleeeeeeeeeeease help me out.. (otherwise I am sure to get some hard
thrashing)

I am working on RH73, gcc version 3.2.1.

I have a binary which is dependent on xercec-c libraries. My code uses a
function XMLException.

Now there are different versions of libxerces-c available. In version
1.5.1 this symbol is mangled as
__12XMLException

While in the version 2.1.0, it is mangled as 
_ZTI12XMLException

Now, initially my code was using 2.1.0 version of shared lib. But due to
some problems (beyond reach of normal developers like me), we had to
shift to 1.5.1. I built my product using 1.5.1 version. But while
testing, in the test environment libraries of both versions were
present. [:(:(:( ]. 

So the above symbol was picked from 2.1.0 libxerces-so.lib. But now when
the final package is sent out for testing, it does not have any 2.1.0
libs. Now we get the "undefined symbol error".. :(

I have to stick to 1.5.1. how can I resolve this error????



-Ajay




More information about the Gcc-help mailing list