This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: libstdc++.so.5 vs libstdc++.so.6


On Sat, Jan 17, 2009 at 5:43 PM, Ian Lance Taylor wrote:
> No.  Sorry.  Changes in the major version number indicate
> incompatible code.

Dear Ian:

Thank you for your prompt reply.

Are there really no way out? I'm distributing a research project
developed jointly by my professor and several other students,
and currently we are forced to deliberately keep several different
versions of Linux around, just so that we can build the *same*
simple C++ source code and produce different versions of the library.

Our Mac OS X distribution is a breeze. Not only does the binary
simply depend on library version >= 1.0 for every main library of Mac OS X,
and we can even compile both PowerPC and Intelx86 code into
the *same* library file, and the user's Mac OS will intelligently load
the PowerPC chunk versus the Intelx86 chunk.

Okay. So I need to keep multiple Linux build boxes. That's fine.
Is there perhaps a way to bundle multiple versions of the code
into the ELF output file, tagged with different versions, so that
we can at least distribute only 1 file to the user (rather than asking
the users to check their Linux library version number for stdc++,
libm, libgcc... which is just asking them too much)?

(Likewise, due to user inability, distributing the source code
and asking them to compile is also out of the question,
especially due to Linux distros being so incompatible
with each other...)

This is not a complaint. I'm thankful for your reply.
And I think perhaps I'm trying to solve the wrong problem
rather than finding the right solution, so if anyone has other
suggestions, please let me know.  Thanks!


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]