Hi Evgeny, Thank you very much for your quick and helpful reply! Actually, I don't have the .config file because I'm working on a .. restricted device..
Also, I've cross-compiled the library for use on that target device, so I don't know how one would be able to check this at configure-time. The --enable-itc=pipe parameter is exactly what I needed, so perhaps we could document this better? This mailing list thread is already helpful I believe. It could also be my lack of knowledge on this matter that I had overlooked this option. Thank you! Kind regards, Roel Janssen On Fri, 2022-12-23 at 11:05 +0300, Evgeny Grin wrote: > Hi Roel, > > Looks like your Linux kernel was compiled without eventfd support. Can > you check your '.config' for 'CONFIG_EVENTFD'? > > The easiest way to build working MHD in such case is use > '--enable-itc=pipe' configure parameter. It will prevent usage of > eventfd functions even if eventfd support is detected in headers and libc. > > Thanks for your nice report, I'll add more checks in configure to check > for the real eventfd availability. > > -- > Evgeny > > > On 22.12.2022 20:38, Roel Janssen wrote: > > Dear list, > > > > I'm trying to create an HTTP server for an ARMv7 device. > > But MHD_start_daemon returns NULL, and I don't know how to go from there. > > > > The device uses kernel: > > # uname -a > > Linux buildroot 4.0.0-ADI-1.3.0 #1 PREEMPT Thu Sep 15 16:03:17 UTC 2022 > > armv7l GNU/Linux > > > > And libc: > > # /lib/libc-2.18.so > > GNU C Library (GNU libc) stable release version 2.18, by Roland McGrath et > > al. > > Copyright (C) 2013 Free Software Foundation, Inc. > > This is free software; see the source for copying conditions. > > There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A > > PARTICULAR PURPOSE. > > Compiled by GNU CC version 4.8.3. > > Compiled on a Linux 4.0.0 system on 2018-04-28. > > Available extensions: > > crypt add-on version 2.1 by Michael Glad and others > > GNU Libidn by Simon Josefsson > > Native POSIX Threads Library by Ulrich Drepper et al > > BIND-8.2.3-T5B > > libc ABIs: UNIQUE > > For bug reporting instructions, please see: > > <http://www.gnu.org/software/libc/bugs.html>. > > > > > > I cross-compiled libmicrohttpd-0.9.75 with --enable-messages, and call > > MHD_start_daemon as > > following: > > daemon = MHD_start_daemon (MHD_USE_INTERNAL_POLLING_THREAD | > > MHD_USE_ERROR_LOG, > > PORT, NULL, NULL, &respond, NULL, > > MHD_OPTION_END); > > > > Unfortunately, MHD_start_daemon returns NULL. Here's the output snippet of > > strace: > > > > write(1, "Starting HTTP server.\n", 22) = 22 > > brk(NULL) = 0x5a000 > > brk(0x7b000) = 0x7b000 > > eventfd2(0, EFD_CLOEXEC|EFD_NONBLOCK) = -1 ENOSYS (Function not > > implemented) > > write(2, "Failed to create inter-thread co"..., 78) = 78 > > > > What's going on? And what can I do? > > > > Kind regards, > > Roel Janssen > > > >