Re: libZ and libz

From: Fons Rademakers (Fons.Rademakers@cern.ch)
Date: Wed Mar 04 1998 - 17:16:18 MET


Hi Paolo,

   I've changed the ROOT versions of inflate and deflate according
to your suggestion. The change will be in the v2.0 beta that will
hopefully appear this Friday.

Cheers, Fons.


Paolo Calafiura wrote:
> 
> Hi rooters,
>   I am writing an application that read an XDR-based DST and
> "translates" it into a root tree. I have been fighting against
> misterious crashes till I realized that the definitions of "inflate" and
> "deflate" functions in the z library were not the same in root libZip
> (int inflate(void)) and in libz.a version 1.0.4 used by the XDR
> distribution (int inflate(z_stream, int)), which is, as far as I can
> tell, more recent(1996). What happens then, is that the linker takes the
> libz.a definition of inflate and the program either bombs (on a Sun) or
> produces crap (on a SGI).
>   I can think of two solutions to this clash:
> 1) one pulls the gzip routines out of root libraries
>  (and so use whatever version of libz.a become available)
> 2) if we are happy to use inside libZip.so the current (1994) frozen
> version of
>   inflate, deflate etc, one should "namespace" them e.g. calling them
> ROOT_inflate, ROOT_deflate...
> 
>   In the meanwhile I would appreciate any suggestion for a workaround,
> short of doing myself the renaming :-)
>   Paolo

-- 
Org:    CERN, European Laboratory for Particle Physics.
Mail:   1211 Geneve 23, Switzerland          Phone: +41 22 7679248
E-Mail: Fons.Rademakers@cern.ch              Fax:   +41 22 7677910



This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:34:30 MET