My proposal for the libgcc runtime ABI (ia64 gcc/glibc is broken.)

Alexandre Oliva aoliva@redhat.com
Fri Jul 14 06:22:00 GMT 2000


On Jul 11, 2000, Alexandre Oliva <aoliva@redhat.com> wrote:

> Why, then, should glibc people take over the creation of this shared
> library for GNU/Linux systems?

Now here's one additional, interesting problem.  Assume libgcc is a
shared library.  It has obviously been linked with some version of
libc, given that it uses symbols from libc.  This means it will have a
dependency on some particular libc SONAME encoded in it.

Now think of glibc: since it uses libgcc, it will also have some
particular libgcc SONAME encoded in it.  But libgcc already depended
on libc, so we have a circularity.  No big deal: each library will
only be loaded once, and everything is fine, right?  Despite the minor
problem of how to bootstrap this situation.

But there's a major problem too.  What if I decide to upgrade one of
GCC or glibc.  What now?  New programs I create will depend on the
most recent libgcc and glibc, but one of the libraries (the one that
was not updated) will depend on the older version of the other.  So,
if I had upgraded GCC, I'd have two different, potentially
incompatible versions, of libgcc loaded into the same process.  I'm
afraid this may not work.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer                  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicamp        oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist    *Please* write to mailing lists, not to me



More information about the Gcc mailing list