Problematic linking between glibc and shared libgcc

Geoff Keating geoffk@geoffk.org
Mon Feb 19 13:21:00 GMT 2001


> From: Ulrich Drepper <drepper@redhat.com>
> Date: 19 Feb 2001 11:58:33 -0800

> And note, it's not libgcc_s.so.  This DSO is versioned, via file names
> or internally.  Every time it changes on any supported platform the
> version number must be changed (unless you keep track of the version
> numbers for each platform individually which is a maintainer's
> nightmare).  This means you /lib directory (or whatever) will be
> filled up with different libgcc versions. 

This cannot work; there should be only one copy of libgcc running in
any single process.  Since there is only one glibc that is used by all
programs, and it is linked with some version of libgcc, then there
should be only one installed libgcc, at least on Linux systems.

The easiest way to accomplish this is to have only one version number
(for the purposes of shared library dependencies, anyway) and require
that the latest libgcc be installed.  This has always been the plan.

> I've said all this before
> and the solution gcc people came up with is ignoring the problem.

As I've said before, we had this problem before shared libgcc and we
still have it now, and it's not one of the problems that shared libgcc
could `solve'.

-- 
- Geoffrey Keating <geoffk@geoffk.org>



More information about the Gcc mailing list