On Wed, 8 Dec 2010 17:08:15 +0000
"Armitage, Jon" <[email protected]> wrote:

> > On Wed, 8 Dec 2010 15:43:23 +0000
> > "Armitage, Jon" <[email protected]> wrote:
> > 
> > > I am trying to upgrade from 0.96.3 on a box running Solaris 10.
> > > 
> > > I used this configure command, which worked with 0.96.3, and has
> > > worked with 0.96.5 on another Solaris 10 box:
> > > 
> > > ./configure --with-user=exim --with-group=exim
> > > LDFLAGS=-L/usr/local/lib LIBS=-liconv
> > > 
> > > The make fails with the following error:
> > > 
> > >   CCLD   clamscan
> > > ../libclamav/.libs/libclamav.so: undefined reference to
> > > `pthread_key_cre...@sunw_0.9' ../libclamav/.libs/libclamav.so:
> > > undefined reference to
> > 
> > Looks like you are using broken version of binutils:
> > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26014
> > 
> > What do these commands output, and is the output different between
> > the 2 machines:
> > $ nm -D /lib/libc.so | grep pthread_key_create
> > $ nm -D /lib/libpthread.so | grep pthread_key_create
> > $ find . -name '*.la' -exec egrep 
> > dependency_libs=\|relink_command {} \;
> > 
> > Best regards,
> > --Edwin
> >
> On the machine which does not work:
> 
> -bash-3.00$ nm -D /lib/libc.so | grep pthread_key_create 
> [2019]  |    783792|     260|FUNC |WEAK |0    |9
> |_pthread_key_create [2809]  |    783792|     260|FUNC |WEAK |0
> |9      |pthread_key_create -bash-3.00$ nm -D /lib/libpthread.so |
> grep pthread_key_create [3]     |         0|       0|FUNC |GLOB |0
> |ABS    |_pthread_key_create [184]   |         0|       0|FUNC |GLOB
> |0    |ABS    |pthread_key_create -bash-3.00$ find . -name '*.la'
> -exec egrep \|relink_command {} \;
> relink_command="(cd /export/home/jon/clamav-0.96.5/libclamav; /bin/bash 
> /export/home/jon/clamav-0.96.5/libtool
> --silent --tag CC --mode=relink gcc -g -O2 -module -thread-safe
> -version-info 7:7:1 -no-undefined
> -Wl,--version-script,../libclamunrar_iface/libclamunrar_iface.map
> -L/usr/local/lib -o libclamunrar_iface.la -rpath /usr/local/lib
> unrar_iface.lo libclamunrar.la -liconv -lsocket @inst_prefix_dir@)"
> 
> On the machine which does work:
> 
> -bash-3.00$ nm -D /lib/libc.so | grep pthread_key_create 
> [2839]  |    819564|     264|FUNC |WEAK |0    |9
> |_pthread_key_create [221]   |    819564|     264|FUNC |WEAK |0
> |9      |pthread_key_create -bash-3.00$ nm -D /lib/libpthread.so |
> grep pthread_key_create [3]     |         0|       0|FUNC |GLOB |0
> |ABS    |_pthread_key_create [184]   |         0|       0|FUNC |GLOB
> |0    |ABS    |pthread_key_create -bash-3.00$ find . -name '*.la'
> -exec egrep \|relink_command {} \;
> relink_command="(cd /export/home/jon/clamav-0.96.5/libclamav; /bin/bash 
> /export/home/jon/clamav-0.96.5/libtool
> --silent --tag CC --mode=relink gcc -g -O2 -module -thread-safe
> -version-info 7:7:1 -no-undefined
> -Wl,-M,../libclamunrar_iface/libclamunrar_iface.map -L/usr/local/lib
> -o libclamunrar_iface.la -rpath /usr/local/lib unrar_iface.lo
> libclamunrar.la -lnsl -liconv -lgmp -lbz2 -lsocket @inst_prefix_dir@)"

Well you're missing a bunch of these on the machine that doesn't work
(no -lnsl, and -lbz2 there). Also -lgmp is something you must have
added on your own, since ClamAV no longer uses GMP.

Check the environment vars and configure invocation (CFLAGS, LIBS,
LDFLAGS, etc.) on both machines, and make sure they match.
Also check tool versions (gcc, ld, etc.).

Best regards,
--Edwin
_______________________________________________
Help us build a comprehensive ClamAV guide: visit http://wiki.clamav.net
http://www.clamav.net/support/ml

Reply via email to