hadi at cyberus.ca
Fri Jun 15 12:13:18 CEST 2012
There's probably an easy way to do this. Note: This is not a libev
issue perse, rather a glibc compat issue.
glibc 2.9 and above added support for EPOLL_CLOEXEC + IN_CLOEXEC
If i compile (and app-embed) libev on a system with glibc 2.9
and try to run it on a system which is < glibc 2.9
there is failure to load (since we expect presence of the CLOEXEC).
There are many solutions:
a) compile things on glibc 2.8. That is not something i would like
b) put limit on requirements for running the program to glibc2.9.
I cant get rid of debian 5(glibc2.8) as an execution environment.
c) upgrade glibc on debian 5. painful, a one-off. So NO.
d) patch libev to undefine EPOLL_CLOEXEC + IN_CLOEXEC; of course
this means i gotta remember this everytime i upgrade libev and i miss
on all the performance improvement for other systems which support
e) Compile a speacial binary for debian 5 which undefines the
So far none of these are palatable.
More information about the libev