On  9 Apr, Christopher J Peikert wrote:
>> 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:

 Very strange. What does the version in /usr/X11/lib export then?
 I only have one libz, in /usr/lib/libz.a

 I put xml-libs before gtk-libs in app/Makefile.am. Could you test if
 it works now?

> 
> 1.  Should Dia really be statically-linking libz?  Shouldn't there be
>     a parameter to use shared libs?
 No it shouldn't, and it doesn't for me. 
 
> 2.  Shouldn't /usr/lib appear before /usr/X11/lib in the list of
>     libraries/directories in app/Makefile?
 It shouldn't really matter.
 
> 3.  Is my system just messed up in having a libz.a sitting around in
>     /usr/X11/lib?

 I think soo, but i've seen this particular problem from other people.

/ Alex

Reply via email to