I hesitate to suggest this, because I'm not sure what other problems it might cause...
Anyway, assuming that Cairo is C, and not C++, you might try playing with the -Bsymbolic option to ld, maybe in combination with -zallextract. Alan's right though --- linking in two versions of a library is a good way to end up in debug hell... - Ali Alfred Peng wrote: > The Cairo library is also under development, and the version Firefox > depends on is newer than the latest released one. So it's just a > development cycle problem. At last, there will be only one version of > cairo in our system. :-) > > Thanks, > > -Alfred > > Alan Coopersmith wrote: > >> If you're doing this for the Firefox being shipped in Solaris, the only >> correct answer is to work with the GNOME team to have them deliver the >> version of Cairo you need so that there is only one version to worry >> about. >> >> -Alan Coopersmith- alan.coopersmith at sun.com >> Sun Microsystems, Inc. - X Window System Engineering >> >> Alfred Peng wrote: >> >>> Hi all, >>> >>> I've got a library linking question. Hope that you can give me >>> some suggestion. >>> >>> Firefox needs the latest cairo library to support its new layout >>> development. However, the cairo library bundled in Solaris11/Linux >>> currently is old. So Firefox makes its own cairo snapshot during the >>> feature development. A cairo static library(a.a for later reference) >>> is generated from the source code and linked to a dynamic >>> library(b.so for later reference). At the same time, gtk2 library >>> depends on the system cairo library(c.so) and c.so will be linked to >>> b.so also. I know it's a little mess :-[ >>> >>> On ubuntu with gcc, b.so will call the functions in library a.a >>> and works well. But on Solaris11 with our sunCC(CC: Sun C++ 5.8 >>> 2005/10/13), b.so will call the functions in library c.so and it >>> crashes. >>> >>> Do we have any option to make b.so call the functions in a.a >>> instead of c.so on Solaris 11? Or it depends on the linking order of >>> the object files and libraries? >>> >>> I don't know whether I've made myself clear about this problem. If >>> not, please let me know. >>> >>> Thanks, >>> >>> -Alfred >>> _______________________________________________ >>> tools-linking mailing list >>> tools-linking at opensolaris.org >> >> > > _______________________________________________ > tools-linking mailing list > tools-linking at opensolaris.org
