On 2/6/07, mike caplin <[EMAIL PROTECTED]> wrote:
I am trying to build v0.88.7 on Tru64 5.1B in order to upgrade from an older version however freshclam fails to compile with the following error: <snip>
Hi Mike, Sorry for the delay in looking at this. It looks to me like adding -D_POSIX_PII_SOCKET to the CFLAGS for ClamAV will fix this on Tru64 UNIX. The code seems to be always assuming that the length argument is of type "socklen_t". I'm sure that is true for current versions of Linux but not necessarily always true (as seen here) for the commercial UNIXs that have to support legacy APIs. For those, various POSIX compatibility macros may need to be specified to get the api with the expected argument types. Without that macro definition, the default prototype on Tru64 for the "connect()" api takes a "size_t" instead of a "socklen_t" . Both are typedef'ed to "unsigned long" (64 bit unsigned integer). Less picky compilers would probably just throw a warning. Mike, for your specific situation, setting export DEC_CC="-D_POSIX_PII_SOCKET -pthread -verbose" should fix it since you are using the DEC/Compaq compiler. Long term, it should be fixed in the configure script to properly define it for Tru64. Note, the above pertains to Tru64 UNIX V5.1A and later. I don't have access to anything older at the moment to check the situation on the older releases (though in all probability, it is probably true as far back as at least V4.0D). Hope this helps.... Jeff D _______________________________________________ Help us build a comprehensive ClamAV guide: visit http://wiki.clamav.net http://lurker.clamav.net/list/clamav-users.html
