versioning C++ includes

Rainer Orth ro@TechFak.Uni-Bielefeld.DE
Tue Jun 25 12:07:00 GMT 2002


"B. Kosnik" <bkoz@nabi.net> writes:

> > 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. 
> 
> Yep. This is correct. Phil's symbol versioning bits implemented this for
> libstdc++ 3.1.0 on systems that use GNU ld, have shared libgcc, etc.
> Perhaps Phil can clarify or elaborate? Nathan, if you compile to object
> file (-c) with gcc-3.1.0 and do 'nm' on the undefined (and thus linked)
> symbols you'll see the versioning info. It's much as you desire,
> already.

And even without this interface versioning support, proper use of libtool's
-set-version gives you proper binary compatibility.  So please avoid
duplicating this functionality with subdirs of $libdir or some such: this
is both unnecessary and gives you nightmares on platforms that don't
hardcode rpath into binaries/libraries.

	Rainer



More information about the Libstdc++ mailing list