Upgrading from 0.80 to 0.81 and ran into the following compile error:

Making all in clamd
        /bin/sh ../libtool --mode=link gcc  -g -O3 -mno-power -mno-powerpc -mtune=common -mcpu=common -maix32 -L/usr/local/lib   -lnsl -L/usr/local/lib -o clamd  output.o  cfgparser.o getopt.o  memory.o misc.o  options.o clamd.o  tcpserver.o localserver.o  session.o thrmgr.o  server-th.o scanner.o  others.o clamuko.o  dazukoio_compat12.o  dazukoio.o  ../libclamav/libclamav.la  -lnsl -lpthread
gcc -g -O3 -mno-power -mno-powerpc -mtune=common -mcpu=common -maix32 -o .libs/clamd output.o cfgparser.o getopt.o memory.o misc.o options.o clamd.o tcpserver.o localserver.o session.o thrmgr.o server-th.o scanner.o others.o clamuko.o dazukoio_compat12.o dazukoio.o  -L/usr/local/lib -L../libclamav/.libs -lclamav -lz -lbz2 -lnsl -lpthread -Wl,-bnolibpath -Wl,-blibpath:/usr/local/lib:/usr/lib:/lib
ld: 0711-317 ERROR: Undefined symbol: .CMSG_SPACE
ld: 0711-317 ERROR: Undefined symbol: .CMSG_LEN
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
collect2: ld returned 8 exit status
make: 1254-004 The error code from the last command is 1.

        I poked around and found that
                1)  the two variables references in clamd/others.c and clamdscan/client.c.
                2)  the variables are defined in /usr/include/sys/socket.h which is included in both c files.
                3)  the variables were introduced in 0.81.

        Here the line from clamd/others.c

#ifdef HAVE_CONTROL_IN_MSGHDR
        struct cmsghdr *cmsg;
        char tmp[CMSG_SPACE(sizeof(fd))];
#endif
....

#ifndef INCOMPLETE_CMSG
    if (cmsg->cmsg_type != SCM_RIGHTS)
        return -1;
    if (cmsg->cmsg_len != CMSG_LEN(sizeof(fd)))
        return -1;
#endif

        There are other CMSG_ variables in others.c that the compiler isn't croking on.  I've checked and I didn't find
the symbols defined in any unusual libraries.  Do I need to specifiy some additional options/variables?
Disclaimer: The information contained in this communication is confidential and 
only for the use of the intended addressee(s).  If you have received this 
communication in error, any disclosure or use of such information is strictly 
prohibited.  Please notify the sender immediately and destroy all copies.  
Thank you.

_______________________________________________
http://lists.clamav.net/cgi-bin/mailman/listinfo/clamav-users

Reply via email to