I just have built a shared library, but when I use nm command to look the dependency the output is as below
$ nm -a libgio-2.0.so.0.2701.0 | grep ZLIB
U deflateSetHeader@@ZLIB_1.2.2
U inflateGetHeader@@ZLIB_1.2.2
I don't know the mean of @@ZLIB_1.2.2
, actually the command of building libgio is
gcc -o libgio-2.0.so.0.2701.0 libfoo.so libbar.so libz.so.1.2.8
where libz.so.1.2.8
is built from source by myself and put to the same directory of libgio-2.0.so.0.2701.0. It's not the same version as the system's libz(/usr/lib/libz.so)
So, my question is why the nm
output of @@zlib
is 1.2.2
, not 1.2.8
? and what the mean of @@ZLIB_1.2.2
in nm output?
Thanks