> I don't know a lot about how exactly the linker works but if I rember correctly
> I once saw a linking process where the order the libs were written mattered.
> That means that the library defining a symbol has to be given *after* the library
> requesting it. So may be you can just play with the order in which the libs are
> listed or even put them twice...
I found a solution to the problem. In the list of library directories
given in the Makefile, /usr/X11/lib appears before /usr/lib. My
/usr/X11/lib directory had a copy of libz.a residing in it, and it
must have been old because there was no "gzopen" symbol defined in it,
nor any of the others. I copied my newer libz.a into that directory
and things compiled fine. So now some questions for the developers:
1. Should Dia really be statically-linking libz? Shouldn't there be
a parameter to use shared libs?
2. Shouldn't /usr/lib appear before /usr/X11/lib in the list of
libraries/directories in app/Makefile?
3. Is my system just messed up in having a libz.a sitting around in
/usr/X11/lib?
Thanks,
-Chris Peikert