what means is defined in DSO /lib64/libz.so.1

Fabian Deutsch fabian.deutsch at gmx.de
Tue Mar 6 17:21:52 UTC 2012

Am Dienstag, den 06.03.2012, 17:10 +0000 schrieb Sérgio Basto:
> Hi , I found this error 
> /usr/bin/ld: /usr/lib/gcc/x86_64-redhat-linux/4.7.0/../../../../lib64/libgpac_static.a(base_encoding.o): undefined reference to symbol 'deflate'                                                              
> /usr/bin/ld: note: 'deflate' is defined in DSO /lib64/libz.so.1 so try
> adding it to the linker command
> line                                                                                                   
> /lib64/libz.so.1: could not read symbols: Invalid
> operation                                            
> collect2: error: ld returned 1 exit status

DSO is something like an auto-symbol-resolver (so linking in libraries
that are used by other directly-linked libraries, google for with with
DSO is deactivated on fedora, therefor you need to pass each library
required to the linker.
In the above case you need to additionally pass -lz to the linked (e.g.
using LDLAGS=-lz), as suggested by gcc (which says: is defined in)


> Could someone help me , to understand what happens ? 
> Thanks in advance, 
> -- 
> Sérgio M. B.

More information about the devel mailing list