| Paul Pluzhnikov 2004-09-08, 3:57 am |
| Slattery_T@bls.gov (Tim Slattery) writes:
> I suspect that g++ uses a different name mangling convention than the
> Sun compiler that created the *.so files.
You bet. In general, object files compiled with different C++
compilers are not link-compatible, and the different mangling schemes
are used to make sure nobody can succeed in linking such objects
together.
You've been saved: had you succeeded in linking, you'd be likely
looking at a runtime crash, which would have been much harder to
debug, especially without the source to the library.
> Is there anything that can convert the *.so files into
> something that I can use?
No. But you can ask the vendor to supply you with a g++-linkable
version of the library. Be sure to ask for specific g++ version,
as object layout (and link compatibility) has changed between
g++-2.95.x, 3.0, 3.1, and 3.2 (AFAIK).
Cheers,
--
In order to understand recursion you must first understand recursion.
|