Just to confirm: it compiled like a charm from trunk! :-)

On Fri, Jan 4, 2019 at 7:42 PM silvioprog <silviop...@gmail.com> wrote:

> Thanks for answering dude! :-)
>
> I'm going to test it ... 🏃
>
> On Fri, Jan 4, 2019 at 5:56 PM Evgeny Grin <k...@yandex.ru> wrote:
>
>> Hi,
>>
>> It was fixed already in Git master by
>> 1616caa17764c878bc18c6344a0f7f60b2cb596c
>>
>> --
>> Best Wishes,
>> Evgeny Grin
>>
>>  28.12.2018, 09:08, "silvioprog" <silviop...@gmail.com>:
>>
>> Hello,
>>
>> I've tried to compile the latest stable version on MinGW-w64, but it
>> raises the following error at build time (cut relevant parts only):
>>
>> wget --continue --content-disposition
>> https://ftp.gnu.org/gnu/libmicrohttpd/libmicrohttpd-0.9.62.tar.gz
>> tar -zxvf libmicrohttpd-0.9.62.tar.gz
>> cd libmicrohttpd-0.9.62/ && mkdir build && cd build/
>> ../configure --enable-static=yes --enable-shared=no --enable-messages=yes
>> --enable-https=yes --enable-asserts=no --enable-coverage=no
>> --disable-httpupgrade --disable-dauth --disable-doc --disable-examples
>> --disable-curl
>>
>> ...
>>
>> configure: GNU libmicrohttpd 0.9.62 Configuration Summary:
>>   Target directory:  /mingw32
>>   Cross-compiling:   no
>>   Operating System:  mingw32
>>   Shutdown of listening socket trigger select: no
>>   Inter-thread comm: socketpair
>>   poll support:      yes
>>   epoll support:     no
>>   sendfile used:     no
>>   HTTPS support:     yes (using libgnutls)
>>   Threading lib:     w32
>>   Use thread names:  no
>>   Use debug asserts: no
>>   Messages:          yes
>>   Gettext:           yes
>>   Basic auth.:       yes
>>   Digest auth.:      no
>>   HTTP "Upgrade":    no
>>   Postproc:          yes
>>   Build docs:        no
>>   Build examples:    no
>>   Test with libcurl: no, many unit tests will not run
>>
>> configure: HTTPS subsystem configuration:
>>   License         :  LGPL only
>>
>> configure: WARNING: This will be a custom build with missing symbols. Do
>> NOT use this build in a distribution. Building with these kinds of
>> configure options is only for custom builds for embedded systems.
>>
>> Now the make:
>>
>> make
>>
>> ...
>>
>> ../../../src/microhttpd/daemon.c: In function
>> 'thread_main_handle_connection':
>> ../../../src/microhttpd/daemon.c:1781:17: error: array type has
>> incomplete element type 'struct pollfd'
>>    struct pollfd p[1 + EXTRA_SLOTS];
>>                  ^
>> ../../../src/microhttpd/daemon.c:1843:29: error: 'POLLIN' undeclared
>> (first use in this function); did you mean 'POINT'?
>>                p[0].events = POLLIN;
>>                              ^~~~~~
>>                              POINT
>> ../../../src/microhttpd/daemon.c:1843:29: note: each undeclared
>> identifier is reported only once for each function it appears in
>> In file included from ../../../src/microhttpd/internal.h:72:0,
>>                  from ../../../src/microhttpd/daemon.c:32:
>> ../../../src/microhttpd/mhd_sockets.h:340:27: warning: implicit
>> declaration of function 'WSAPoll'; did you mean 'WSANtohl'?
>> [-Wimplicit-function-declaration]
>>  #    define MHD_sys_poll_ WSAPoll
>>                            ^
>> ../../../src/microhttpd/daemon.c:1846:23: note: in expansion of macro
>> 'MHD_sys_poll_'
>>                if (0 > MHD_sys_poll_ (p,
>>                        ^~~~~~~~~~~~~
>> ../../../src/microhttpd/mhd_sockets.h:362:38: error: 'POLLRDBAND'
>> undeclared (first use in this function); did you mean 'POLLIN'?
>>  #    define MHD_POLL_EVENTS_ERR_DISC POLLRDBAND
>>                                       ^
>> ../../../src/microhttpd/daemon.c:2012:32: note: in expansion of macro
>> 'MHD_POLL_EVENTS_ERR_DISC'
>>         p[0].events |= POLLIN | MHD_POLL_EVENTS_ERR_DISC;
>>                                 ^~~~~~~~~~~~~~~~~~~~~~~~
>> ../../../src/microhttpd/daemon.c:2015:23: error: 'POLLOUT' undeclared
>> (first use in this function); did you mean 'POLLIN'?
>>         p[0].events |= POLLOUT | MHD_POLL_EVENTS_ERR_DISC;
>>                        ^~~~~~~
>>                        POLLIN
>> ../../../src/microhttpd/daemon.c:2055:39: error: 'POLLERR' undeclared
>> (first use in this function); did you mean 'POLLOUT'?
>>                 (0 != (p[1].revents & (POLLERR | POLLHUP | POLLIN))) )
>>                                        ^~~~~~~
>>                                        POLLOUT
>> ../../../src/microhttpd/daemon.c:2055:49: error: 'POLLHUP' undeclared
>> (first use in this function); did you mean 'POLLOUT'?
>>                 (0 != (p[1].revents & (POLLERR | POLLHUP | POLLIN))) )
>>                                                  ^~~~~~~
>>                                                  POLLOUT
>> In file included from ../../../src/microhttpd/daemon.c:44:0:
>> ../../../src/microhttpd/daemon.c: In function 'MHD_poll_all':
>> ../../../src/microhttpd/daemon.c:3736:30: error: invalid application of
>> 'sizeof' to incomplete type 'struct pollfd'
>>                       sizeof (struct pollfd));
>>                               ^
>> ../../../src/microhttpd/mhd_compat.h:79:38: note: in definition of macro
>> 'MHD_calloc_'
>>  #define MHD_calloc_(n,s) calloc((n),(s))
>>                                       ^
>> ../../../src/microhttpd/daemon.c:3754:3: error: invalid use of undefined
>> type 'struct pollfd'
>>   p[poll_server].fd = ls;
>>    ^
>> ../../../src/microhttpd/daemon.c:3754:3: error: dereferencing pointer to
>> incomplete type 'struct pollfd'
>> ../../../src/microhttpd/daemon.c:3755:3: error: invalid use of undefined
>> type 'struct pollfd'
>>   p[poll_server].events = POLLIN;
>>    ^
>> ../../../src/microhttpd/daemon.c:3755:26: error: 'POLLIN' undeclared
>> (first use in this function); did you mean 'POINT'?
>>   p[poll_server].events = POLLIN;
>>                           ^~~~~~
>>                           POINT
>> ../../../src/microhttpd/daemon.c:3756:3: error: invalid use of undefined
>> type 'struct pollfd'
>>   p[poll_server].revents = 0;
>>    ^
>> ../../../src/microhttpd/daemon.c:3763:3: error: invalid use of undefined
>> type 'struct pollfd'
>>   p[poll_server].fd = MHD_itc_r_fd_ (daemon->itc);
>>    ^
>> ../../../src/microhttpd/daemon.c:3764:3: error: invalid use of undefined
>> type 'struct pollfd'
>>   p[poll_server].events = POLLIN;
>>    ^
>> ../../../src/microhttpd/daemon.c:3765:3: error: invalid use of undefined
>> type 'struct pollfd'
>>   p[poll_server].revents = 0;
>>    ^
>> ../../../src/microhttpd/daemon.c:3781:3: error: invalid use of undefined
>> type 'struct pollfd'
>>   p[poll_server+i].fd = pos->socket_fd;
>>    ^
>> ../../../src/microhttpd/daemon.c:3785:7: error: invalid use of undefined
>> type 'struct pollfd'
>>       p[poll_server+i].events |= POLLIN | MHD_POLL_EVENTS_ERR_DISC;
>>        ^
>> In file included from ../../../src/microhttpd/internal.h:72:0,
>>                  from ../../../src/microhttpd/daemon.c:32:
>> ../../../src/microhttpd/mhd_sockets.h:362:38: error: 'POLLRDBAND'
>> undeclared (first use in this function); did you mean 'POLLIN'?
>>  #    define MHD_POLL_EVENTS_ERR_DISC POLLRDBAND
>>                                       ^
>> ../../../src/microhttpd/daemon.c:3785:42: note: in expansion of macro
>> 'MHD_POLL_EVENTS_ERR_DISC'
>>       p[poll_server+i].events |= POLLIN | MHD_POLL_EVENTS_ERR_DISC;
>>                                           ^~~~~~~~~~~~~~~~~~~~~~~~
>> ../../../src/microhttpd/daemon.c:3788:7: error: invalid use of undefined
>> type 'struct pollfd'
>>       p[poll_server+i].events |= POLLOUT | MHD_POLL_EVENTS_ERR_DISC;
>>        ^
>> ../../../src/microhttpd/daemon.c:3788:33: error: 'POLLOUT' undeclared
>> (first use in this function); did you mean 'POLLIN'?
>>       p[poll_server+i].events |= POLLOUT | MHD_POLL_EVENTS_ERR_DISC;
>>                                  ^~~~~~~
>>                                  POLLIN
>> ../../../src/microhttpd/daemon.c:3791:7: error: invalid use of undefined
>> type 'struct pollfd'
>>       p[poll_server+i].events |=  MHD_POLL_EVENTS_ERR_DISC;
>>        ^
>> ../../../src/microhttpd/daemon.c:3837:18: error: invalid use of undefined
>> type 'struct pollfd'
>>           (0 != (p[poll_itc_idx].revents & POLLIN)) )
>>                   ^
>> ../../../src/microhttpd/daemon.c:3854:14: error: invalid use of undefined
>> type 'struct pollfd'
>>          if (p[poll_server+i].fd != pos->socket_fd)
>>               ^
>> ../../../src/microhttpd/daemon.c:3857:31: error: invalid use of undefined
>> type 'struct pollfd'
>>                         0 != (p[poll_server+i].revents & POLLIN),
>>                                ^
>> ../../../src/microhttpd/daemon.c:3858:31: error: invalid use of undefined
>> type 'struct pollfd'
>>                         0 != (p[poll_server+i].revents & POLLOUT),
>>                                ^
>> ../../../src/microhttpd/daemon.c:3859:31: error: invalid use of undefined
>> type 'struct pollfd'
>>                         0 != (p[poll_server+i].revents &
>> MHD_POLL_REVENTS_ERR_DISC));
>>                                ^
>> In file included from ../../../src/microhttpd/internal.h:72:0,
>>                  from ../../../src/microhttpd/daemon.c:32:
>> ../../../src/microhttpd/mhd_sockets.h:371:77: error: 'POLLERR' undeclared
>> (first use in this function); did you mean 'POLLOUT'?
>>       (MHD_POLLPRI_OR_ZERO | MHD_POLLRDBAND_OR_ZERO |
>> MHD_POLLNVAL_OR_ZERO | POLLERR | POLLHUP)
>>
>>    ^
>> ../../../src/microhttpd/daemon.c:3859:57: note: in expansion of macro
>> 'MHD_POLL_REVENTS_ERR_DISC'
>>                         0 != (p[poll_server+i].revents &
>> MHD_POLL_REVENTS_ERR_DISC));
>>
>>  ^~~~~~~~~~~~~~~~~~~~~~~~~
>> ../../../src/microhttpd/mhd_sockets.h:371:87: error: 'POLLHUP' undeclared
>> (first use in this function); did you mean 'POLLOUT'?
>>       (MHD_POLLPRI_OR_ZERO | MHD_POLLRDBAND_OR_ZERO |
>> MHD_POLLNVAL_OR_ZERO | POLLERR | POLLHUP)
>>
>>              ^
>> ../../../src/microhttpd/daemon.c:3859:57: note: in expansion of macro
>> 'MHD_POLL_REVENTS_ERR_DISC'
>>                         0 != (p[poll_server+i].revents &
>> MHD_POLL_REVENTS_ERR_DISC));
>>
>>  ^~~~~~~~~~~~~~~~~~~~~~~~~
>> ../../../src/microhttpd/daemon.c:3899:11: error: invalid use of undefined
>> type 'struct pollfd'
>>    (0 != (p[poll_listen].revents & POLLIN)) )
>>            ^
>> ../../../src/microhttpd/daemon.c: In function 'MHD_poll_listen_socket':
>> ../../../src/microhttpd/daemon.c:3919:17: error: array type has
>> incomplete element type 'struct pollfd'
>>    struct pollfd p[2];
>>                  ^
>> ../../../src/microhttpd/daemon.c:3937:30: error: 'POLLIN' undeclared
>> (first use in this function); did you mean 'POINT'?
>>        p[poll_count].events = POLLIN;
>>                               ^~~~~~
>>                               POINT
>> make[3]: *** [Makefile:1271: libmicrohttpd_la-daemon.lo] Error 1
>> make[3]: Leaving directory
>> '/home/duall/libmicrohttpd-0.9.62/build/src/microhttpd'
>> make[2]: *** [Makefile:446: all-recursive] Error 1
>> make[2]: Leaving directory '/home/duall/libmicrohttpd-0.9.62/build/src'
>> make[1]: *** [Makefile:580: all-recursive] Error 1
>> make[1]: Leaving directory '/home/duall/libmicrohttpd-0.9.62/build'
>> make: *** [Makefile:487: all] Error 2
>>
>> I've used MinGW-w64 (on Windows 7 64-bits) downloaded from:
>>
>> http://repo.msys2.org/distrib/i686/msys2-i686-20180531.exe
>>
>> and installed the required tools + GnuTLS:
>>
>> pacman -Syu
>> pacman -S --needed tar base-devel mingw-w64-i686-toolchain
>> mingw-w64-i686-gnutls
>>
>> Thanks in advance for any help!
>>
>> --
>> Silvio Clécio
>>
>>
>
> --
> Silvio Clécio
>


-- 
Silvio Clécio

Reply via email to