Re: [gtk-list] gdk_imlib problem



> Hello.
Hi

> I have a problem after I upgraded to imlib 1.9.4. When I try to compile
> any applications using gdk_imlib, I get:
> 
> /usr/lib/libgdk_imlib.so: undefined reference to `__deregister_frame_info'
> /usr/lib/libgdk_imlib.so: undefined reference to `__register_frame_info'
...
> Ketil Froyn
...
> http://www.ifi.uio.no/~ketilf/       
> mailto:ketilf@ifi.uio.no

  RTFM glibc/FAQ, 2.8:
---------------------------------------------------------------------------
2.8.    When I run an executable on one system which I compiled on
        another, I get dynamic linker errors.  Both systems have the same
        version of glibc installed.  What's wrong?

{ZW} Glibc on one of these systems was compiled with gcc 2.7 or 2.8, the
other with egcs (any version).  Egcs has functions in its internal
`libgcc.a' to support exception handling with C++.  They are linked into
any program or dynamic library compiled with egcs, whether it needs them or
not.  Dynamic libraries then turn around and export those functions again
unless special steps are taken to prevent them.

When you link your program, it resolves its references to the exception
functions to the ones exported accidentally by libc.so.  That works fine as
long as libc has those functions.  On the other system, libc doesn't have
those functions because it was compiled by gcc 2.8, and you get undefined
symbol errors.  The symbols in question are named things like
`__register_frame_info'.

For glibc 2.0, the workaround is to not compile libc with egcs.  We've also
incorporated a patch which should prevent the EH functions sneaking into
libc.  It doesn't matter what compiler you use to compile your program.

For glibc 2.1, we've chosen to do it the other way around: libc.so
explicitly provides the EH functions.  This is to prevent other shared
libraries from doing it.  You must therefore compile glibc 2.1 with EGCS
unless you don't care about ever importing binaries from other systems.
Again, it doesn't matter what compiler you use for your programs.



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]