This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


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

Re: Restore __eprintf


On May 31, 2001, Fergus Henderson <fjh@cs.mu.oz.au> wrote:

> You may also need to remove any object files or static libraries
> compiled with older versions of gcc, since they might contain
> references to __eprintf().

This shouldn't be a problem in general, assuming you're going to use
these object files and static libraries to create executables.
Indeed, if you use them to create shared libraries, they won't find
__eprintf() in libgcc_s, but for executables, __eprintf() will be
present in the static libgcc.  Even in the case of shared libraries,
the work-around is not that difficult:
-nodefaultlibs -lgcc_s -lc -lgcc_s -lgcc -lc -lgcc

> Or alternatively, how about putting it in the shared glibc for all
> architectures, marking it as deprecated, and then removing it in GCC 4.0?

There's no reason to introduce this binary compatibility problem right
now.  Perhaps we should even install libeprintf.a, containing
only eprintf.o, so that the work-around would be even simpler:
-leprintf.

-- 
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


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