There is a problem compiling beanstalkd 1.5 on centos 5.7. CentOS
seems to be missing EPOLLRDHUP feature.
cc -Wall -Werror -c -o conn.o conn.c
cc -Wall -Werror -c -o file.o file.c
cc -Wall -Werror -c -o heap.o heap.c
cc -Wall -Werror -c -o job.o job.c
cc -Wall -Werror -c -o ms.o ms.c
cc -Wall -Werror -c -o net.o net.c
cc -Wall -Werror -c -o port-linux.o port-linux.c
cc -Wall -Werror -c -o primes.o primes.c
cc -Wall -Werror -c -o prot.o prot.c
cc -Wall -Werror -c -o sd-daemon.o sd-daemon.c
cc -Wall -Werror -c -o sock-linux.o sock-linux.c
cc1: warnings being treated as errors
sock-linux.c: In function ‘sockinit’:
sock-linux.c:20: warning: implicit declaration of function
‘epoll_create1’
sock-linux.c: In function ‘sockwant’:
sock-linux.c:53: error: ‘EPOLLRDHUP’ undeclared (first use in this
function)
sock-linux.c:53: error: (Each undeclared identifier is reported only
once
sock-linux.c:53: error: for each function it appears in.)
sock-linux.c: In function ‘handle’:
sock-linux.c:94: error: ‘EPOLLRDHUP’ undeclared (first use in this
function)
make: *** [sock-linux.o] Error 1
error: Bad exit status from /home/rpm.shared/tmp/rpm-tmp.81935
(%build)
Can we optionally use libevent, as that worked fine?
<thomas.parrott%infinity-tracking....@gtempaccount.com> wrote: > There is a problem compiling beanstalkd 1.5 on centos 5.7. CentOS > seems to be missing EPOLLRDHUP feature.
Wow, what kernel does Centos 5.7 use? According to man epoll_ctl, EPOLLRDHUP was introduced in kernel 2.6.17, which was released over five years ago. I think that's old enough to be called "ancient".
Maybe I can find a workaround and avoid using that flag entirely. Patches are welcome!
> Can we optionally use libevent, as that worked fine?
Sorry, libevent is not an option any more. Beanstalkd as a whole is actually much simpler now without it. We got better portability from libevent combined with autotools, but in the end that wasn't worth the hassle.