Ethereal-users: Re: [Ethereal-users] Minor probs installing 0.9.0 under Solaris 2.8 (zlib, IP

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Guy Harris <gharris@xxxxxxxxx>
Date: Mon, 14 Jan 2002 21:33:09 -0800
On Mon, Jan 14, 2002 at 04:14:23PM -0500, R. P. Channing Rodgers, M.D. wrote:
> 1) Comression using zlib does not get built into the
>    ethereal binary, even thought we have the latest zlib
>    installed.  With ethereal v. 0.8.8, configuration output
>    included:
> 
>       checking whether to use zlib for reading compressed capture files... yes
>       checking for zlib.h... yes
>       checking for gzgets in -lz... yes
> 
>    resulting in the use of zlib compression, in v. 0.9.0
>    we observe:
> 
>       checking whether to use zlib for reading compressed capture files... yes
>       checking for zlib.h... (cached) yes
>       checking for gzseek in -lz... (cached) no
> 
>    and compression is *not* built into the ethereal binary,
>    even though we have the latest (v. 1.1.3) version of
>    zlib installed, from the principal author, available at:
> 
>       http://www.info-zip.org/pub/infozip/zlib/
> 
>    and configure is clearly finding the include file, just
>    not the call "gzseek"; in running nm on the libz.a file
>    we observe:
> 
>       [4]     |         0|       8|OBJT |LOCL |0    |3      |gz_magic
>       [3]     |         0|    1352|FUNC |LOCL |0    |2      |gz_open
>       [14]    |      5376|     212|FUNC |GLOB |0    |2      |gzclose
>       [17]    |      1404|     112|FUNC |GLOB |0    |2      |gzdopen
>       [18]    |      5588|     444|FUNC |GLOB |0    |2      |gzerror
>       [16]    |      4632|     472|FUNC |GLOB |0    |2      |gzflush
>       [1]     |         0|       0|FILE |LOCL |0    |ABS    |gzio.c
>       [42]    |      1352|      52|FUNC |GLOB |0    |2      |gzopen
>       [41]    |      3096|    1152|FUNC |GLOB |0    |2      |gzread
>       [15]    |      4248|     384|FUNC |GLOB |0    |2      |gzwrite
> 
>    that is, there is no "gzseek".

Then either

	1) that "zlib.a" file is *NOT* the result of compiling the
	   source for zlib 1.1.3

or

	2) somehow it was built incorrectly (no, I don't know how that
	   might have happened)

as the zlib 1.1.3 source file "gzio.c" *does* include a "gzseek()"
routine (which *is* required by Ethereal in order to read gzipped
files).

It also includes a "gzgets()" routine, but it doesn't show up in your
"nm" output, either.  Assuming that your "nm" output showed *all* the
routines in "libz.a", then this leads me to suspect that, somehow, your
Ethereal 0.8.8 build was done with a *different* version of the zlib
file (zlib.a or zlib.so), as it *did* find "gzgets()" (and "gzseek()",
as otherwise Ethereal would not have built).

Make sure you are *NOT* linking with, for example, an ancient zlib in
"/usr/openwin/lib".  (That's a problem on many free UNIXes with XFree86;
however, the ancient zlib is part of recent X releases, and if the
latest Solaris release includes such a release, complete with its
ancient zlib, this might be the problem you're seeing.)