I had not previously asked a question about this error, I'm just sending a
summary in case anyone else runs into this issue.
The problem is illustrated below (the Apache configure mistakenly
configures in support for the SO_ACCEPTFILTER feature available in BSD):
# cd /apache/build/root
# ./configure
...
# make
...
e -I../../include/arch/unix -I../../include/arch/unix -c sockopt.c &&
touch sockopt.lo
cc: Error: sockopt.c, line 356: In this declaration, "af" has no linkage
and is of an incomplete type. (incompnolink)
struct accept_filter_arg af;
-----------------------------^
cc: Error: sockopt.c, line 360: In this statement, "SO_ACCEPTFILTER" is not
declared. (undeclared)
if ((setsockopt(sock->socketdes, SOL_SOCKET, SO_ACCEPTFILTER,
-------------------------------------------------^
*** Exit 1
Stop.
The solution was found on Google groups--thanks to Avi Shapiro, Nikola
Multinovic, and 'capt':
# cd srclib/apr/include
# edit apr.h and change
#define APR_HAS_SO_ACCEPTFILTER 1
to
#define APR_HAS_SO_ACCEPTFILTER 0
# cd -
# make
(works fine now)
FYI the Apache 2.0.40 build works fine on T64U 5.1A -- seems to be a 4.0x
problem.
Received on Mon Sep 23 2002 - 21:12:59 NZST