Cannot build packages needing libevent with those needing libev for the same system

Marc Lehmann schmorp at
Tue Nov 14 16:49:50 CET 2017

On Mon, Nov 13, 2017 at 11:21:48PM -0500, "J. Hart" <jfhart085 at> wrote:
> This function is defined in, and declared for the compiler in
> event2/event.h. Both of these objects are part of the libevent package (ex
> libevent-2.0.22). The /usr/include/event.h header of the libevent package
> conflicts with that of the libev package. The libev package does not define
> the "event_base_loopbreak" function required, in this case, by Qt-5.9.2, and
> the libev package cannot be installed as is along with the libevent package.
> If the libevent/libev header conflict is not resolved, then the packages
> requiring one of these must be patched.  This can be rather complicated,
> particularly for large packages like Qt.   This would also have to be redone
> for each new release.

The libevent 1 emulation is optional, you could embed libev without the
event.[ch] files.

It might be possible to supply an event_base_loopbreak function, although I
don't know if this is part of the libevent 1 API (the one libev emulates) or
libevent 2.

Maybe sth. like this (for event.c) works (this is not correct, so some
testing might be required):

   int event_base_loopbreal (struct event_base *base)

     ev_break (EV_A_ EVBREAK_ONE);

     return 0;

However, using libevent2 for libevent functions and libev for libev
functions (by embedding only the liubev core parts) would probably be the
best solution.

                The choice of a       Deliantra, the free code+content MORPG
      -----==-     _GNU_    
      ----==-- _       generation
      ---==---(_)__  __ ____  __      Marc Lehmann
      --==---/ / _ \/ // /\ \/ /      schmorp at
      -=====/_/_//_/\_,_/ /_/\_\

More information about the libev mailing list