saghul / pycares

Python interface for c-ares
https://pypi.org/project/pycares/
MIT License
162 stars 74 forks source link

Can't build from sources on EL8 #176

Closed fantomfp closed 1 year ago

fantomfp commented 1 year ago

Trying to build version 4.2.2 from sources.

On EL8 system, the c-ares library is at the version 1.13.0.

The variable PYCARES_USE_SYSTEM_LIB=1 is set during the build.

CFLAGS='-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection'
LDFLAGS='-Wl,-z,relro  -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld'
/usr/bin/python3 setup.py build '--executable=/usr/bin/python3 -s'
running build
running build_py
creating build
creating build/lib.linux-x86_64-3.6
creating build/lib.linux-x86_64-3.6/pycares
copying src/pycares/__init__.py -> build/lib.linux-x86_64-3.6/pycares
copying src/pycares/__main__.py -> build/lib.linux-x86_64-3.6/pycares
copying src/pycares/_version.py -> build/lib.linux-x86_64-3.6/pycares
copying src/pycares/errno.py -> build/lib.linux-x86_64-3.6/pycares
copying src/pycares/utils.py -> build/lib.linux-x86_64-3.6/pycares
running build_ext
generating cffi module 'build/temp.linux-x86_64-3.6/_cares.c'
creating build/temp.linux-x86_64-3.6
building '_cares' extension
creating build/temp.linux-x86_64-3.6/build
creating build/temp.linux-x86_64-3.6/build/temp.linux-x86_64-3.6
gcc -pthread -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC -DHAVE_CONFIG_H=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -Ideps/build-config/include -I/usr/include/python3.6m -c build/temp.linux-x86_64-3.6/_cares.c -o build/temp.linux-x86_64-3.6/build/temp.linux-x86_64-3.6/_cares.o
build/temp.linux-x86_64-3.6/_cares.c:854:60: warning: ‘struct ares_addrinfo’ declared inside parameter list will not be visible outside of this definition or declaration
 static void _addrinfo_cb(void * a0, int a1, int a2, struct ares_addrinfo * a3)
                                                            ^~~~~~~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:1534:46: warning: ‘struct ares_addrinfo’ declared inside parameter list will not be visible outside of this definition or declaration
 static void _cffi_d_ares_freeaddrinfo(struct ares_addrinfo * x0)
                                              ^~~~~~~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c: In function ‘_cffi_d_ares_freeaddrinfo’:
build/temp.linux-x86_64-3.6/_cares.c:1536:3: warning: implicit declaration of function ‘ares_freeaddrinfo’; did you mean ‘ares_free_string’? [-Wimplicit-function-declaration]
   ares_freeaddrinfo(x0);
   ^~~~~~~~~~~~~~~~~
   ares_free_string
build/temp.linux-x86_64-3.6/_cares.c: At top level:
build/temp.linux-x86_64-3.6/_cares.c:1623:177: warning: ‘struct ares_addrinfo’ declared inside parameter list will not be visible outside of this definition or declaration
 static void _cffi_d_ares_getaddrinfo(struct ares_channeldata * x0, char const * x1, char const * x2, struct ares_addrinfo_hints const * x3, void(* x4)(void *, int, int, struct ares_addrinfo *), void * x5)
                                                                                                                                                                                 ^~~~~~~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:1623:109: warning: ‘struct ares_addrinfo_hints’ declared inside parameter list will not be visible outside of this definition or declaration
 static void _cffi_d_ares_getaddrinfo(struct ares_channeldata * x0, char const * x1, char const * x2, struct ares_addrinfo_hints const * x3, void(* x4)(void *, int, int, struct ares_addrinfo *), void * x5)
                                                                                                             ^~~~~~~~~~~~~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c: In function ‘_cffi_d_ares_getaddrinfo’:
build/temp.linux-x86_64-3.6/_cares.c:1625:3: warning: implicit declaration of function ‘ares_getaddrinfo’; did you mean ‘ares_getnameinfo’? [-Wimplicit-function-declaration]
   ares_getaddrinfo(x0, x1, x2, x3, x4, x5);
   ^~~~~~~~~~~~~~~~
   ares_getnameinfo
build/temp.linux-x86_64-3.6/_cares.c: In function ‘_cffi_f_ares_getaddrinfo’:
build/temp.linux-x86_64-3.6/_cares.c:1635:39: warning: ‘struct ares_addrinfo’ declared inside parameter list will not be visible outside of this definition or declaration
   void(* x4)(void *, int, int, struct ares_addrinfo *);
                                       ^~~~~~~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:1692:42: warning: ‘struct ares_addrinfo’ declared inside parameter list will not be visible outside of this definition or declaration
   x4 = (void(*)(void *, int, int, struct ares_addrinfo *))_cffi_to_c_pointer(arg4, _cffi_type(180));
                                          ^~~~~~~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:1692:6: warning: assignment to ‘void (*)(void *, int,  int,  struct ares_addrinfo *)’ from incompatible pointer type ‘void (*)(void *, int,  int,  struct ares_addrinfo *)’ [-Wincompatible-pointer-types]
   x4 = (void(*)(void *, int, int, struct ares_addrinfo *))_cffi_to_c_pointer(arg4, _cffi_type(180));
      ^
build/temp.linux-x86_64-3.6/_cares.c:1693:47: warning: ‘struct ares_addrinfo’ declared inside parameter list will not be visible outside of this definition or declaration
   if (x4 == (void(*)(void *, int, int, struct ares_addrinfo *))NULL && PyErr_Occurred())
                                               ^~~~~~~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:1693:10: warning: comparison of distinct pointer types lacks a cast
   if (x4 == (void(*)(void *, int, int, struct ares_addrinfo *))NULL && PyErr_Occurred())
          ^~
build/temp.linux-x86_64-3.6/_cares.c: At top level:
build/temp.linux-x86_64-3.6/_cares.c:2629:82: warning: ‘struct ares_caa_reply’ declared inside parameter list will not be visible outside of this definition or declaration
 static int _cffi_d_ares_parse_caa_reply(unsigned char const * x0, int x1, struct ares_caa_reply * * x2)
                                                                                  ^~~~~~~~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c: In function ‘_cffi_d_ares_parse_caa_reply’:
build/temp.linux-x86_64-3.6/_cares.c:2631:10: warning: implicit declaration of function ‘ares_parse_caa_reply’; did you mean ‘ares_parse_soa_reply’? [-Wimplicit-function-declaration]
   return ares_parse_caa_reply(x0, x1, x2);
          ^~~~~~~~~~~~~~~~~~~~
          ares_parse_soa_reply
build/temp.linux-x86_64-3.6/_cares.c: In function ‘_cffi_const_ARES_ESERVICE’:
build/temp.linux-x86_64-3.6/_cares.c:4131:12: error: ‘ARES_ESERVICE’ undeclared (first use in this function); did you mean ‘ARES_ESERVFAIL’?
   int n = (ARES_ESERVICE) <= 0;
            ^~~~~~~~~~~~~
            ARES_ESERVFAIL
build/temp.linux-x86_64-3.6/_cares.c:4131:12: note: each undeclared identifier is reported only once for each function it appears in
build/temp.linux-x86_64-3.6/_cares.c: In function ‘_cffi_const_ARES_OPT_RESOLVCONF’:
build/temp.linux-x86_64-3.6/_cares.c:4362:12: error: ‘ARES_OPT_RESOLVCONF’ undeclared (first use in this function); did you mean ‘ARES_OPT_ROTATE’?
   int n = (ARES_OPT_RESOLVCONF) <= 0;
            ^~~~~~~~~~~~~~~~~~~
            ARES_OPT_ROTATE
build/temp.linux-x86_64-3.6/_cares.c: At top level:
build/temp.linux-x86_64-3.6/_cares.c:4613:56: warning: ‘struct ares_addrinfo’ declared inside parameter list will not be visible outside of this definition or declaration
 static void _cffi_checkfld_struct_ares_addrinfo(struct ares_addrinfo *p)
                                                        ^~~~~~~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c: In function ‘_cffi_checkfld_struct_ares_addrinfo’:
build/temp.linux-x86_64-3.6/_cares.c:4617:43: error: dereferencing pointer to incomplete type ‘struct ares_addrinfo’
   { struct ares_addrinfo_cname * *tmp = &p->cnames; (void)tmp; }
                                           ^~
build/temp.linux-x86_64-3.6/_cares.c: At top level:
build/temp.linux-x86_64-3.6/_cares.c:4620:72: error: field ‘y’ has incomplete type
 struct _cffi_align_struct_ares_addrinfo { char x; struct ares_addrinfo y; };
                                                                        ^
build/temp.linux-x86_64-3.6/_cares.c:4623:62: warning: ‘struct ares_addrinfo_cname’ declared inside parameter list will not be visible outside of this definition or declaration
 static void _cffi_checkfld_struct_ares_addrinfo_cname(struct ares_addrinfo_cname *p)
                                                              ^~~~~~~~~~~~~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c: In function ‘_cffi_checkfld_struct_ares_addrinfo_cname’:
build/temp.linux-x86_64-3.6/_cares.c:4627:12: error: dereferencing pointer to incomplete type ‘struct ares_addrinfo_cname’
   (void)((p->ttl) | 0);  /* check that 'struct ares_addrinfo_cname.ttl' is an integer */
            ^~
build/temp.linux-x86_64-3.6/_cares.c: At top level:
build/temp.linux-x86_64-3.6/_cares.c:4632:84: error: field ‘y’ has incomplete type
 struct _cffi_align_struct_ares_addrinfo_cname { char x; struct ares_addrinfo_cname y; };
                                                                                    ^
build/temp.linux-x86_64-3.6/_cares.c:4635:62: warning: ‘struct ares_addrinfo_hints’ declared inside parameter list will not be visible outside of this definition or declaration
 static void _cffi_checkfld_struct_ares_addrinfo_hints(struct ares_addrinfo_hints *p)
                                                              ^~~~~~~~~~~~~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c: In function ‘_cffi_checkfld_struct_ares_addrinfo_hints’:
build/temp.linux-x86_64-3.6/_cares.c:4639:12: error: dereferencing pointer to incomplete type ‘struct ares_addrinfo_hints’
   (void)((p->ai_flags) | 0);  /* check that 'struct ares_addrinfo_hints.ai_flags' is an integer */
            ^~
build/temp.linux-x86_64-3.6/_cares.c: At top level:
build/temp.linux-x86_64-3.6/_cares.c:4644:84: error: field ‘y’ has incomplete type
 struct _cffi_align_struct_ares_addrinfo_hints { char x; struct ares_addrinfo_hints y; };
                                                                                    ^
build/temp.linux-x86_64-3.6/_cares.c:4647:61: warning: ‘struct ares_addrinfo_node’ declared inside parameter list will not be visible outside of this definition or declaration
 static void _cffi_checkfld_struct_ares_addrinfo_node(struct ares_addrinfo_node *p)
                                                             ^~~~~~~~~~~~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c: In function ‘_cffi_checkfld_struct_ares_addrinfo_node’:
build/temp.linux-x86_64-3.6/_cares.c:4651:12: error: dereferencing pointer to incomplete type ‘struct ares_addrinfo_node’
   (void)((p->ai_ttl) | 0);  /* check that 'struct ares_addrinfo_node.ai_ttl' is an integer */
            ^~
build/temp.linux-x86_64-3.6/_cares.c: At top level:
build/temp.linux-x86_64-3.6/_cares.c:4660:82: error: field ‘y’ has incomplete type
 struct _cffi_align_struct_ares_addrinfo_node { char x; struct ares_addrinfo_node y; };
                                                                                  ^
build/temp.linux-x86_64-3.6/_cares.c:4673:57: warning: ‘struct ares_caa_reply’ declared inside parameter list will not be visible outside of this definition or declaration
 static void _cffi_checkfld_struct_ares_caa_reply(struct ares_caa_reply *p)
                                                         ^~~~~~~~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c: In function ‘_cffi_checkfld_struct_ares_caa_reply’:
build/temp.linux-x86_64-3.6/_cares.c:4677:38: error: dereferencing pointer to incomplete type ‘struct ares_caa_reply’
   { struct ares_caa_reply * *tmp = &p->next; (void)tmp; }
                                      ^~
build/temp.linux-x86_64-3.6/_cares.c: At top level:
build/temp.linux-x86_64-3.6/_cares.c:4684:74: error: field ‘y’ has incomplete type
 struct _cffi_align_struct_ares_caa_reply { char x; struct ares_caa_reply y; };
                                                                          ^
build/temp.linux-x86_64-3.6/_cares.c: In function ‘_cffi_checkfld_struct_ares_options’:
build/temp.linux-x86_64-3.6/_cares.c:4741:21: error: ‘struct ares_options’ has no member named ‘resolvconf_path’
   { char * *tmp = &p->resolvconf_path; (void)tmp; }
                     ^~
In file included from /usr/include/rpc/netdb.h:42,
                 from /usr/include/netdb.h:32,
                 from build/temp.linux-x86_64-3.6/_cares.c:499:
build/temp.linux-x86_64-3.6/_cares.c: At top level:
build/temp.linux-x86_64-3.6/_cares.c:5045:15: error: invalid use of undefined type ‘struct ares_addrinfo’
   { "cnames", offsetof(struct ares_addrinfo, cnames),
               ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5046:49: error: dereferencing pointer to incomplete type ‘struct ares_addrinfo’
               sizeof(((struct ares_addrinfo *)0)->cnames),
                                                 ^~
In file included from /usr/include/rpc/netdb.h:42,
                 from /usr/include/netdb.h:32,
                 from build/temp.linux-x86_64-3.6/_cares.c:499:
build/temp.linux-x86_64-3.6/_cares.c:5048:14: error: invalid use of undefined type ‘struct ares_addrinfo’
   { "nodes", offsetof(struct ares_addrinfo, nodes),
              ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5051:12: error: invalid use of undefined type ‘struct ares_addrinfo_cname’
   { "ttl", offsetof(struct ares_addrinfo_cname, ttl),
            ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5052:52: error: dereferencing pointer to incomplete type ‘struct ares_addrinfo_cname’
            sizeof(((struct ares_addrinfo_cname *)0)->ttl),
                                                    ^~
In file included from /usr/include/rpc/netdb.h:42,
                 from /usr/include/netdb.h:32,
                 from build/temp.linux-x86_64-3.6/_cares.c:499:
build/temp.linux-x86_64-3.6/_cares.c:5054:14: error: invalid use of undefined type ‘struct ares_addrinfo_cname’
   { "alias", offsetof(struct ares_addrinfo_cname, alias),
              ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5057:13: error: invalid use of undefined type ‘struct ares_addrinfo_cname’
   { "name", offsetof(struct ares_addrinfo_cname, name),
             ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5060:13: error: invalid use of undefined type ‘struct ares_addrinfo_cname’
   { "next", offsetof(struct ares_addrinfo_cname, next),
             ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5063:17: error: invalid use of undefined type ‘struct ares_addrinfo_hints’
   { "ai_flags", offsetof(struct ares_addrinfo_hints, ai_flags),
                 ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5064:57: error: dereferencing pointer to incomplete type ‘struct ares_addrinfo_hints’
                 sizeof(((struct ares_addrinfo_hints *)0)->ai_flags),
                                                         ^~
In file included from /usr/include/rpc/netdb.h:42,
                 from /usr/include/netdb.h:32,
                 from build/temp.linux-x86_64-3.6/_cares.c:499:
build/temp.linux-x86_64-3.6/_cares.c:5066:18: error: invalid use of undefined type ‘struct ares_addrinfo_hints’
   { "ai_family", offsetof(struct ares_addrinfo_hints, ai_family),
                  ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5069:20: error: invalid use of undefined type ‘struct ares_addrinfo_hints’
   { "ai_socktype", offsetof(struct ares_addrinfo_hints, ai_socktype),
                    ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5072:20: error: invalid use of undefined type ‘struct ares_addrinfo_hints’
   { "ai_protocol", offsetof(struct ares_addrinfo_hints, ai_protocol),
                    ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5075:15: error: invalid use of undefined type ‘struct ares_addrinfo_node’
   { "ai_ttl", offsetof(struct ares_addrinfo_node, ai_ttl),
               ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5076:54: error: dereferencing pointer to incomplete type ‘struct ares_addrinfo_node’
               sizeof(((struct ares_addrinfo_node *)0)->ai_ttl),
                                                      ^~
In file included from /usr/include/rpc/netdb.h:42,
                 from /usr/include/netdb.h:32,
                 from build/temp.linux-x86_64-3.6/_cares.c:499:
build/temp.linux-x86_64-3.6/_cares.c:5078:17: error: invalid use of undefined type ‘struct ares_addrinfo_node’
   { "ai_flags", offsetof(struct ares_addrinfo_node, ai_flags),
                 ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5081:18: error: invalid use of undefined type ‘struct ares_addrinfo_node’
   { "ai_family", offsetof(struct ares_addrinfo_node, ai_family),
                  ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5084:20: error: invalid use of undefined type ‘struct ares_addrinfo_node’
   { "ai_socktype", offsetof(struct ares_addrinfo_node, ai_socktype),
                    ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5087:20: error: invalid use of undefined type ‘struct ares_addrinfo_node’
   { "ai_protocol", offsetof(struct ares_addrinfo_node, ai_protocol),
                    ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5090:19: error: invalid use of undefined type ‘struct ares_addrinfo_node’
   { "ai_addrlen", offsetof(struct ares_addrinfo_node, ai_addrlen),
                   ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5093:16: error: invalid use of undefined type ‘struct ares_addrinfo_node’
   { "ai_addr", offsetof(struct ares_addrinfo_node, ai_addr),
                ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5096:16: error: invalid use of undefined type ‘struct ares_addrinfo_node’
   { "ai_next", offsetof(struct ares_addrinfo_node, ai_next),
                ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5105:13: error: invalid use of undefined type ‘struct ares_caa_reply’
   { "next", offsetof(struct ares_caa_reply, next),
             ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5106:48: error: dereferencing pointer to incomplete type ‘struct ares_caa_reply’
             sizeof(((struct ares_caa_reply *)0)->next),
                                                ^~
In file included from /usr/include/rpc/netdb.h:42,
                 from /usr/include/netdb.h:32,
                 from build/temp.linux-x86_64-3.6/_cares.c:499:
build/temp.linux-x86_64-3.6/_cares.c:5108:17: error: invalid use of undefined type ‘struct ares_caa_reply’
   { "critical", offsetof(struct ares_caa_reply, critical),
                 ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5111:17: error: invalid use of undefined type ‘struct ares_caa_reply’
   { "property", offsetof(struct ares_caa_reply, property),
                 ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5114:16: error: invalid use of undefined type ‘struct ares_caa_reply’
   { "plength", offsetof(struct ares_caa_reply, plength),
                ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5117:14: error: invalid use of undefined type ‘struct ares_caa_reply’
   { "value", offsetof(struct ares_caa_reply, value),
              ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5120:15: error: invalid use of undefined type ‘struct ares_caa_reply’
   { "length", offsetof(struct ares_caa_reply, length),
               ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5201:24: error: ‘struct ares_options’ has no member named ‘resolvconf_path’
   { "resolvconf_path", offsetof(struct ares_options, resolvconf_path),
                        ^~~~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5202:57: error: ‘struct ares_options’ has no member named ‘resolvconf_path’
                        sizeof(((struct ares_options *)0)->resolvconf_path),
                                                         ^~
build/temp.linux-x86_64-3.6/_cares.c:5336:12: error: invalid application of ‘sizeof’ to incomplete type ‘struct ares_addrinfo’
     sizeof(struct ares_addrinfo), offsetof(struct _cffi_align_struct_ares_addrinfo, y), 5, 2 },
            ^~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5338:12: error: invalid application of ‘sizeof’ to incomplete type ‘struct ares_addrinfo_cname’
     sizeof(struct ares_addrinfo_cname), offsetof(struct _cffi_align_struct_ares_addrinfo_cname, y), 7, 4 },
            ^~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5340:12: error: invalid application of ‘sizeof’ to incomplete type ‘struct ares_addrinfo_hints’
     sizeof(struct ares_addrinfo_hints), offsetof(struct _cffi_align_struct_ares_addrinfo_hints, y), 11, 4 },
            ^~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5342:12: error: invalid application of ‘sizeof’ to incomplete type ‘struct ares_addrinfo_node’
     sizeof(struct ares_addrinfo_node), offsetof(struct _cffi_align_struct_ares_addrinfo_node, y), 15, 8 },
            ^~~~~~
build/temp.linux-x86_64-3.6/_cares.c:5346:12: error: invalid application of ‘sizeof’ to incomplete type ‘struct ares_caa_reply’
     sizeof(struct ares_caa_reply), offsetof(struct _cffi_align_struct_ares_caa_reply, y), 25, 6 },
            ^~~~~~
error: command 'gcc' failed with exit status 1
saghul commented 1 year ago

Does building with the bundled version work?

fantomfp commented 1 year ago

Does building with the bundled version work?

I can't build with bundled c-ares. I'm actually using the Fedora Buildsystem for Enterprise Linux (EL8) packages.

c-ares is a core library. I'm not sure if they can update it in EL8.

saghul commented 1 year ago

I can't build with bundled c-ares.

Why not?

1.13.0 is too old. pycares requires ares_getaddrinfo, which got added in 1.16.0, which is 2 years old already. 1.13 is from 2017. Sorry, but I cannot support such old versions.

You either use the bundled c-ares, install a more recent c-ares version on your system, or use an older pycares release.