This is the mail archive of the libc-alpha@sources.redhat.com mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: libgcc_s.so.1 ASIS won't work with glibc.


On Tue, Jul 03, 2001 at 11:13:03AM -0700, Richard Henderson wrote:
> On Tue, Jul 03, 2001 at 10:34:19AM -0700, H . J . Lu wrote:
> > > Ok, what are the reasons that the DSO would use the v2 EH
> > > that it has included in itself?  It is earlier in the search
> > 
> > It can happen with
> > 
> > # gcc -g -fPIC -c bar.cc
> > # gcc -shared -o libbar.so bar.o -lc
> 
> Um, ok, but now libbar.so doesn't contain __register_frame_info
> and so forth at all.

But it does have __throw and its friends from libgcc.a in g++ v2.

> 
> > 2. Recompile glibc with gcc 3.0.1.
> > 3. Run it against with the new glibc.
> 
> Unless you've written a new version of __frame_state_for for glibc,

My proposal is:

1. Fix the version name in libgcc_s.so in g++ v3.
2. Put the frame functions from libgcc.a in g++ v2 into glibc.
3. We build glibc with the frame functions from libgcc.a in g++ v2
and libgcc.a in g++ v3.

#2 includes  __register_frame, __register_frame_table,
__deregister_frame, __register_frame_info, __deregister_frame_info,
__frame_state_for and __register_frame_info_table.

Now we have 2 versions of those frame functions. The one in libc.so.6
is for the binaries compiled with gcc v2 and the one in libgcc_s.so.1
is for the binaries compiled with gcc v3.

> I don't see how step 2 can be accomplished at all at the moment.
> Certainly I'd expect step 3 to fail, since that function will be
> missing.


H.J.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]