Ethereal-dev: Re: [ethereal-dev] Ethereal 0.8.11 fails to build: "toshiba" undefined reference

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

From: Gilbert Ramirez <gram@xxxxxxxxxx>
Date: Thu, 7 Sep 2000 11:19:52 -0400
On Thu, Sep 07, 2000 at 11:11:09AM +0100, Sean Kelly wrote:
> On Wed, 6 Sep 2000 14:51:51 -0700, Guy Harris said:
> 
>    294: ls -l /usr/lib/libz.*
> -rw-r--r--   1 root     root        65536 Jul 13  1999 /usr/lib/libz.a
> lrwxrwxrwx   1 root	root	       13 Aug 30 16:53
> /usr/lib/libz.so -> libz.so.1.1.3*
> lrwxrwxrwx   1 root	root	       13 Aug 30 16:53
> /usr/lib/libz.so.1 -> libz.so.1.1.3*
> -rwxr-xr-x   1 root     root        62776 Jul 13  1999 /usr/lib/libz.so.1.1.3*
> 
>    295: ls -l /usr/local/lib/libz.*
> /bin/ls: /usr/local/lib/libz.*: No such file or directory
> 
>    296: ls -l /usr/local/X11R6/lib/libz.*
> -rw-r--r--   1 root     root        56558 Sep  1 17:26 0libz.a
> 
> 
> >  If more than one of them reports that there's a "libz.a" or "libz.so" or
> >  "libz.so.<number>" file, the problem is probably that you have two or
> >  more different versions of -lz installed on your machine, one or more of
> >  which may be an old version without "gzgets()" and the ne or more of
> >  which may be a newer version that has it; the test done by the configure
> >  script might be finding the newer version whilst the actual link may be
> >  finding the older version.
> 
> 	So, it looks like there are two libz.a's - each with a
> different file size.
> 
> 	Is the solution to remove one of these and see if things
> break?	The one in /usr/local/X11R6/lib will have been installed from
> the XFree86 4.0.1 source I assume, and the one outside
> /usr/local/X11R6/lib would have been installed from the system CD
> (Slackware Linux 7.1).	Which would been the newest?

Since we know that /usr/lib/libz.so.1.1.3 is the good version, I'd go so far
as to remove (or rename, to be safe) both /usr/lib/libz.a and
/usr/local/X11R6/lib/lib.z. You don't need the /usr/lib/libz.a unless you
want to create statically linked versions of executables.

I don't know if you really need /usr/local/X11R6/lib/libz.a since I don't
know what version it is. But the only time you would need it is if you're
compiling a program that depends on that library version.

In summary, temporarily rename both libz.a's and re-link ethereal to see
what happens.

--gilbert