On 2013-05-22 12:06 AM, Riccardo Mottola wrote: > ls -l /opt/csw/lib/libz.so.1 > lrwxrwxrwx 1 root root 13 Apr 7 18:57 > /opt/csw/lib/libz.so.1 -> libz.so.1.2.7 > > The linker ought to prefer this one? ldd says something even different: > ldd libxml2.so.2 > libdl.so.1 => /lib/libdl.so.1 > libpthread.so.1 => /lib/libpthread.so.1 > libz.so.1 => /opt/csw/lib/sparcv8plus+vis/libz.so.1 <snip>
That's correct. Actually, it's probably an indirect link, because you didn't provide -R/opt/csw/lib/$ISALIST in your linking. If you do an ldd -v, you will get which other lib is asking for this one. You must not link directly against those, it's the runtime linker that chooses thet best one according to the best architecture your current CPU supports. > -L/opt/csw/lib -R/opt/csw/lib <snip> -L/usr/lib That's good: OpenCSW's lib comes first, before the system's. No problem with that, it doesn't matter if you add other -L after it. > -L../Source/./obj -L../Model/./obj > -L/home/multix/GNUstep/Library/Libraries > -L/opt/GNUstep/Local/Library/Libraries > -L/opt/GNUstep/System/Library/Libraries -lgnustep-gui -lpng -ltiff > -lz -ljpeg -lm -lgnustep-base -lobjc -lsocket -lnsl -lm That's good, -lz is here. > Undefined first referenced > symbol in file > gzopen64 /opt/csw/lib/libxml2.so.2 > > which would include /opt/csw/lib but not the particular > /opt/csw/lib/sparcv8/ ! Again, it must not include it, so don't try. What comes to my mind here is, have you installed CSWlibz-dev? Ie, do you have /opt/csw/lib/libz.so, so that the linker can find it? If you have only the .so.1*, it's not enough. Laurent _______________________________________________ maintainers mailing list [email protected] https://lists.opencsw.org/mailman/listinfo/maintainers .:: This mailing list's archive is public. ::.
