Opened 15 months ago
Last modified 5 months ago
#68050 assigned defect
cyclonedds: multiple build errors: error: storage size of 'mreqn' isn't known; error: 'MCAST_JOIN_SOURCE_GROUP' undeclared (first use in this function)
Reported by: | barracuda156 | Owned by: | sikmir (Nikolay Korotkiy) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.8.1 |
Keywords: | Cc: | ||
Port: | cyclonedds |
Description
First of all, it needs compiler.thread_local_storage yes
:
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/idl/src/print.c:32: error: thread-local storage not supported for this target make[2]: *** [src/idl/CMakeFiles/idl.dir/src/print.c.o] Error 1
Then, there is the following:
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c: In function 'set_mc_options_transmit_ipv4_if': /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:391:21: error: storage size of 'mreqn' isn't known 391 | struct ip_mreqn mreqn; | ^~~~~ /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:391:21: warning: unused variable 'mreqn' [-Wunused-variable] /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c: In function 'joinleave_ssm_mcgroup': /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:637:29: error: storage size of 'gsr' isn't known 637 | struct group_source_req gsr; | ^~~ /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:642:57: error: 'MCAST_JOIN_SOURCE_GROUP' undeclared (first use in this function) 642 | rc = ddsrt_setsockopt (socket, IPPROTO_IPV6, join ? MCAST_JOIN_SOURCE_GROUP : MCAST_LEAVE_SOURCE_GROUP, &gsr, sizeof (gsr)); | ^~~~~~~~~~~~~~~~~~~~~~~ /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:642:57: note: each undeclared identifier is reported only once for each function it appears in /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:642:83: error: 'MCAST_LEAVE_SOURCE_GROUP' undeclared (first use in this function) 642 | rc = ddsrt_setsockopt (socket, IPPROTO_IPV6, join ? MCAST_JOIN_SOURCE_GROUP : MCAST_LEAVE_SOURCE_GROUP, &gsr, sizeof (gsr)); | ^~~~~~~~~~~~~~~~~~~~~~~~ /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:637:29: warning: unused variable 'gsr' [-Wunused-variable] 637 | struct group_source_req gsr; | ^~~ /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:647:27: error: storage size of 'mreq' isn't known 647 | struct ip_mreq_source mreq; | ^~~~ /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:655:55: error: 'IP_ADD_SOURCE_MEMBERSHIP' undeclared (first use in this function); did you mean 'IP_ADD_MEMBERSHIP'? 655 | rc = ddsrt_setsockopt (socket, IPPROTO_IP, join ? IP_ADD_SOURCE_MEMBERSHIP : IP_DROP_SOURCE_MEMBERSHIP, &mreq, sizeof (mreq)); | ^~~~~~~~~~~~~~~~~~~~~~~~ | IP_ADD_MEMBERSHIP /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:655:82: error: 'IP_DROP_SOURCE_MEMBERSHIP' undeclared (first use in this function); did you mean 'IP_DROP_MEMBERSHIP'? 655 | rc = ddsrt_setsockopt (socket, IPPROTO_IP, join ? IP_ADD_SOURCE_MEMBERSHIP : IP_DROP_SOURCE_MEMBERSHIP, &mreq, sizeof (mreq)); | ^~~~~~~~~~~~~~~~~~~~~~~~~ | IP_DROP_MEMBERSHIP /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:647:27: warning: unused variable 'mreq' [-Wunused-variable] 647 | struct ip_mreq_source mreq; | ^~~~ make[2]: *** [src/core/CMakeFiles/ddsc.dir/ddsi/src/ddsi_udp.c.o] Error 1 make[2]: *** Waiting for unfinished jobs....
And:
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/ddsrt/src/time/darwin/time.c: In function 'ddsrt_time_monotonic': /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/ddsrt/src/time/darwin/time.c:65:28: warning: conversion to 'long long int' from 'uint64_t' {aka 'long long unsigned int'} may change the sign of the result [-Wsign-conversion] 65 | return (ddsrt_mtime_t) { mt * timeInfo.numer / timeInfo.denom }; | ^~ /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/ddsrt/src/threads/posix/threads.c: In function 'ddsrt_thread_getname': /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/ddsrt/src/threads/posix/threads.c:74:12: error: 'MAXTHREADNAMESIZE' undeclared (first use in this function) 74 | char buf[MAXTHREADNAMESIZE + 1] = ""; | ^~~~~~~~~~~~~~~~~ /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/ddsrt/src/threads/posix/threads.c:74:12: note: each undeclared identifier is reported only once for each function it appears in /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/ddsrt/src/threads/posix/threads.c:74:8: warning: unused variable 'buf' [-Wunused-variable] 74 | char buf[MAXTHREADNAMESIZE + 1] = ""; | ^~~ /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/ddsrt/src/threads/posix/threads.c: In function 'ddsrt_gettid': /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/ddsrt/src/threads/posix/threads.c:356:3: warning: implicit declaration of function 'pthread_threadid_np'; did you mean 'pthread_is_threaded_np'? [-Wimplicit-function-declaration] 356 | pthread_threadid_np(NULL, &tid); | ^~~~~~~~~~~~~~~~~~~ | pthread_is_threaded_np /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/ddsrt/src/threads/posix/threads.c: In function 'ddsrt_gettid_for_thread': /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/ddsrt/src/threads/posix/threads.c:369:10: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] 369 | return (ddsrt_tid_t) thread.v; | ^ make[2]: *** [src/ddsrt/CMakeFiles/ddsrt-internal.dir/src/threads/posix/threads.c.o] Error 1 make[2]: *** Waiting for unfinished jobs....
For pthread_threadid_np
we got a patch (for example, in abseil
port now).
We need to figure out how to fix the rest.
Change History (2)
comment:1 follow-up: 2 Changed 14 months ago by herbygillot (Herby Gillot)
comment:2 Changed 5 months ago by barracuda156
Replying to herbygillot:
Still broken, as of 0.10.5: https://github.com/eclipse-cyclonedds/cyclonedds/issues/2019
Note: See
TracTickets for help on using
tickets.
In 5e94d2c27756efafdb9a685b32ff55a878c4b58c/macports-ports (master):