This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
version coding of libstdc++ in egcs-1.1
- To: egcs at cygnus dot com
- Subject: version coding of libstdc++ in egcs-1.1
- From: Matthias Klose <doko at cs dot tu-berlin dot de>
- Date: Wed, 22 Jul 1998 18:01:51 +0200 (MET DST)
Currently libstdc++ and libg++ use different versioning schemes. The
question: will the versioning schema change for egcs-1.1?
At least on Linux, the libc version, the gcc version and the stdc++
version are coded in the library name, i.e:
ARLIB = libg++-$(LIBSTDCXX_INTERFACE)$(LIBC_INTERFACE)$(CXX_INTERFACE)-$(VERSION).a
MARLINK = libg++$(LIBC_INTERFACE)$(CXX_INTERFACE).a.$(LIBSTDCXX_INTERFACE)
SHLIB = libg++-$(LIBSTDCXX_INTERFACE)$(LIBC_INTERFACE)$(CXX_INTERFACE)-$(VERSION).so
MSHLINK = libg++$(LIBC_INTERFACE)$(CXX_INTERFACE).so.$(LIBSTDCXX_INTERFACE)
BUILD_LIBS = $(ARLIB) marlink $(ARLINK) $(SHLIB) mshlink $(SHLINK)
SHFLAGS = -Wl,-soname,$(MSHLINK)
Will the stdc++ for 1.1 use a similiar versioning schema? The
--enable-version-specific-runtime-libs switch only seems to address
the needs for egcs developers only, who want to keep different
versions of the stdc++ library. All programs linked with a shared
libstdc++ break, if the installed compiler is removed in favour of a
newer version (or the installed shared lib is kept, but programs would
have to use the exact version number in itīs LD_LIBRARY_PATH or
LD_RUN_PATH, at least on Solaris). For platforms other than Linux,
only the coding of the CXX_INTERFACE in the library name would be
needed.