Using this advice, on my system I found:
[/root] # ldd /opt/bin/swish-e
libxml2.so.2 => /usr/lib/libxml2.so.2 (0x4002f000)
libswish-e.so.2 => /opt/lib/libswish-e.so.2 (0x40205000)
libz.so.1 => /lib/libz.so.1 (0x40247000)
libpcreposix.so.0 => /opt/lib/libpcreposix.so.0 (0x40262000)
libpcre.so.0 => /opt/lib/libpcre.so.0 (0x4026b000)
libm.so.6 => /lib/libm.so.6 (0x40295000)
libc.so.6 => /lib/libc.so.6 (0x40345000)
libdl.so.2 => /lib/libdl.so.2 (0x40479000)
libiconv.so.2 => /lib/libiconv.so.2 (0x40484000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x40568000)
/lib/ld-linux.so.3 (0x40000000)
I also found that libz and libxml2 were installed in both /lib and
/opt/lib, with the /opt/lib files seemingly more up to date:
[/root] # ldconfig -p
438 libs found in cache `/etc/ld.so.cache'
libz.so.1 (libc6) => /lib/libz.so.1
libz.so.1 (libc6) => /opt/lib/libz.so.1
libz.so (libc6) => /lib/libz.so
libz.so (libc6) => /opt/lib/libz.so
libxslt.so.1 (libc6) => /usr/local/lib/libxslt.so.1
libxslt.so.1 (libc6) => /opt/lib/libxslt.so.1
libxslt.so (libc6) => /usr/local/lib/libxslt.so
libxslt.so (libc6) => /opt/lib/libxslt.so
libxml2.so.2 (libc6) => /usr/lib/libxml2.so.2
libxml2.so.2 (libc6) => /opt/lib/libxml2.so.2
libxml2.so (libc6) => /usr/lib/libxml2.so
libxml2.so (libc6) => /opt/lib/libxml2.so
libxmlrpc-epi.so.0 (libc6) => /usr/lib/libxmlrpc-epi.so.0
libxmlrpc-epi.so (libc6) => /usr/lib/libxmlrpc-epi.so
libwbclient.so.0 (libc6) => /usr/lib/libwbclient.so.0
libvos.so.0 (libc6) => /usr/lib/libvos.so.0
so I checked what the swish configure options were via ./configure --help
then I did a 'make clean'
then I recompiled, specifying where zlib and libxml2 were to be found ie
in /opt:
/share/MD0_DATA/misc/swish-e-2.4.7/configure --with-pcre=/opt
--with-zlib=/opt --with-libxml2=/opt --prefix=/opt
but after recompiling I found that libxml2 and libz remained referenced
from their original (ie other than /opt) locations:
ldd /opt/bin/swish-e
libxml2.so.2 => /usr/lib/libxml2.so.2 (0x4002f000)
libswish-e.so.2 => /opt/lib/libswish-e.so.2 (0x40205000)
libz.so.1 => /lib/libz.so.1 (0x40247000)
libpcreposix.so.0 => /opt/lib/libpcreposix.so.0 (0x40262000)
libpcre.so.0 => /opt/lib/libpcre.so.0 (0x4026b000)
libm.so.6 => /lib/libm.so.6 (0x40295000)
libc.so.6 => /lib/libc.so.6 (0x40345000)
libdl.so.2 => /lib/libdl.so.2 (0x40479000)
libiconv.so.2 => /lib/libiconv.so.2 (0x40484000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x40568000)
/lib/ld-linux.so.3 (0x40000000)
the swish-e config.log shows:
configure:24828: checking for xml2-config
configure:24846: found /opt/bin/xml2-config
configure:24859: result: /opt/bin/xml2-config
configure:24927: checking for libxml libraries >= 2.4.3
configure:24939: result: found version 2.7.8
configure:25030: checking zlib.h usability
configure:25042: gcc -c -g -O2 -I/opt/include conftest.c >&5
configure:25048: $? = 0
configure:25052: test -z
|| test ! -s conftest.err
configure:25055: $? = 0
configure:25058: test -s conftest.o
configure:25061: $? = 0
configure:25071: result: yes
configure:25075: checking zlib.h presence
configure:25085: gcc -E -I/opt/include conftest.c
configure:25091: $? = 0
configure:25111: result: yes
configure:25146: checking for zlib.h
configure:25153: result: yes
configure:25161: checking for gzread in -lz
configure:25191: gcc -o conftest -g -O2 -I/opt/include -L/opt/lib
conftest.c -lz -lm >&5
configure:25197: $? = 0
configure:25201: test -z
|| test ! -s conftest.err
configure:25204: $? = 0
configure:25207: test -s conftest
configure:25210: $? = 0
configure:25223: result: yes
configure:25282: checking for pcre-config
configure:25300: found /opt/bin/pcre-config
the system is still indexing as I type so am not sure of the outcome....
Thanks
On 8/1/12 9:59 AM, Dr Michael Daly wrote:
>
> Re: _c is< 0 in uncompress1()
>
> something went wrong with my cron driven swish-e installation last
> month.
> This coincided with a reboot of the NAS device its installed on, in the
> process of restoring a C++ library file (/usr/lib/libstdc++.so.6.0.9).
>
>
> Searches of the rebuilt spidered index now produce only this result:
> _c is< 0 in uncompress1()
> (whether searching is via the swish.cgi module or via command line)
>
>
> But searches of a non spidered index built prior to the reboot work
> normally.
>
> I am hoping there is any easy fix.
>
> Swish is installed in a chroot environment in /opt, and Cron runs the
> spidering command overnight:
> /opt/bin/swish-e -S prog -c
> /share/MD0_DATA/swish-e-files/swish-e-conf/web_2.conf
>
>
> I tried recompiling swish, then ran the index command and search worked
> normally...until cron ran overnight. I then found the index file had
> increased in size significanly, and search gave the:
> _c is< 0 in uncompress1() error.
sounds like a problem with your libz (gzip) library being compiled with
swish-e. I would try re-compiling and verify that you are getting libz
included. The ./configure output should tell you.
on linux can also ldd the swish-e binary. mine says:
$ ldd swish-e
libxml2.so.2 => /usr/lib64/libxml2.so.2 (0x00000033c5700000)
libpthread.so.0 => /lib64/tls/libpthread.so.0 (0x00000033bfa00000)
libswish-e.so.2 => /opt/pij/lib/libswish-e.so.2 (0x0000002a95577000)
libz.so.1 => /usr/lib64/libz.so.1 (0x00000033bf800000)
libm.so.6 => /lib64/tls/libm.so.6 (0x00000033bf600000)
libc.so.6 => /lib64/tls/libc.so.6 (0x00000033bf100000)
/lib64/ld-linux-x86-64.so.2 (0x00000033bef00000)
^^ notice the libz.so.1 path. make sure that is sane on your platform.
--
Peter Karman . http://peknet.com/ . peter(at)not-real.peknet.com
_______________________________________________
Users mailing list
Users(at)not-real.lists.swish-e.org
http://lists.swish-e.org/listinfo/users
_______________________________________________
Users mailing list
Users(at)not-real.lists.swish-e.org
http://lists.swish-e.org/listinfo/users
Received on Thu Aug 02 2012 - 13:48:06 GMT