This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: versioning C++ includes
Nathan Myers <ncm-nospam@cantrip.org> writes:
[...]
| > | I like this idea a lot. There's more to do to make it work, though.
| > | We should incorporate the ABI version -- that portion of the release
| > | version whose ABI is frozen, "3.1" for now -- into the library name
| >
| > I think the binary compatibility issues are incorporated in the
| > installed .so (or .a) name -- existing practice. As far as source
| > code is concerned, it suffices to use the compiler release number.
|
| I agree that existing practice solves the version problem for programs
| that use only libstdc++.so. People using g++ sometimes also use other
| C++ libraries. There is no good solution in place to allow them to use
| two libraries of the same release version, but built with different
| compilers. This is necessary if you hope to run two C++ programs you
| didn't build. Without a solution, everybody building for "your"
| machine and who uses any C++ library has to use the same compiler
| version, because there's no place to put the libraries they need.
|
| Do you see the problem?
I see the problem but, I don't think we can do anything better then
what Benjamin is proposing. People using other C++ runtime systems are
out of the realm of V3. People using other C++ libraries, but retaining
our runtime system should view V3 as an *integral part* of the compiler.
Anything other than that is out of the scope of V3. We already have
pains withg libtools. I'm not convinced that we should duplicate them
one more time.
C++ is designed so that there is no clear separation between the
language and the runtime system, therefore fiddling with different
ABI+compiler isn't something that is going to work.
-- Gaby