[systemd-devel] systemd v212 build error

Tom Gundersen teg at jklm.no
Fri Mar 28 04:41:50 PDT 2014


On Fri, Mar 28, 2014 at 12:09 PM, Michael Olbrich
<m.olbrich at pengutronix.de> wrote:
> Hi,
>
> compiling systemd v212 fails here with:
> [...]
> src/libsystemd/sd-rtnl/rtnl-message.c: In function 'sd_rtnl_message_append_u8':
> src/libsystemd/sd-rtnl/rtnl-message.c:462:38: error: 'IFLA_IPTUN_TTL' undeclared (first use in this function)
> src/libsystemd/sd-rtnl/rtnl-message.c:462:38: note: each undeclared identifier is reported only once for each function it appears in
> src/libsystemd/sd-rtnl/rtnl-message.c:463:38: error: 'IFLA_IPTUN_TOS' undeclared (first use in this function)
> src/libsystemd/sd-rtnl/rtnl-message.c:464:38: error: 'IFLA_IPTUN_PROTO' undeclared (first use in this function)
> src/libsystemd/sd-rtnl/rtnl-message.c:465:38: error: 'IFLA_IPTUN_PMTUDISC' undeclared (first use in this function)
> src/libsystemd/sd-rtnl/rtnl-message.c:466:38: error: 'IFLA_IPTUN_ENCAP_LIMIT' undeclared (first use in this function)
> src/libsystemd/sd-rtnl/rtnl-message.c: In function 'sd_rtnl_message_append_u16':
> src/libsystemd/sd-rtnl/rtnl-message.c:508:45: error: 'IFLA_IPTUN_FLAGS' undeclared (first use in this function)
> src/libsystemd/sd-rtnl/rtnl-message.c:511:45: error: 'IFLA_IPTUN_6RD_PREFIXLEN' undeclared (first use in this function)
> src/libsystemd/sd-rtnl/rtnl-message.c:512:45: error: 'IFLA_IPTUN_6RD_RELAY_PREFIXLEN' undeclared (first use in this function)
> src/libsystemd/sd-rtnl/rtnl-message.c: In function 'sd_rtnl_message_append_u32':
> src/libsystemd/sd-rtnl/rtnl-message.c:561:38: error: 'IFLA_IPTUN_LOCAL' undeclared (first use in this function)
> src/libsystemd/sd-rtnl/rtnl-message.c:562:38: error: 'IFLA_IPTUN_REMOTE' undeclared (first use in this function)
> src/libsystemd/sd-rtnl/rtnl-message.c:564:38: error: 'IFLA_IPTUN_FLAGS' undeclared (first use in this function)
> src/libsystemd/sd-rtnl/rtnl-message.c:565:38: error: 'IFLA_IPTUN_FLOWINFO' undeclared (first use in this function)
> src/libsystemd/sd-rtnl/rtnl-message.c:566:38: error: 'IFLA_GRE_FLOWINFO' undeclared (first use in this function)
> src/libsystemd/sd-rtnl/rtnl-message.c: In function 'sd_rtnl_message_append_in6_addr':
> src/libsystemd/sd-rtnl/rtnl-message.c:687:38: error: 'IFLA_IPTUN_6RD_PREFIX' undeclared (first use in this function)
> src/libsystemd/sd-rtnl/rtnl-message.c: In function 'sd_rtnl_message_enter_container':
> src/libsystemd/sd-rtnl/rtnl-message.c:976:79: error: 'IFLA_BRIDGE_MAX' undeclared (first use in this function)
> make[3]: *** [src/libsystemd/sd-rtnl/libsystemd_internal_la-rtnl-message.lo] Error 1
> make[3]: *** Waiting for unfinished jobs....
> make[2]: *** [all-recursive] Error 1
> make[1]: *** [all] Error 2
> [...]
>
> From what I can tell these where added in Linux 3.7, so the corresponding
> headers are currently needed. Should these be added to missing.h? I think
> we can use IFLA_IPTUN_MAX/IFLA_BRIDGE_MAX if the enums are needed.

Thanks for the report. I'm looking at fixing this now (but to do it
nicely I decided to do a bigger rewrite of the whole rtnl type-system
logic, so not quite done yet).

I'd be happy with accepting a patch to missing.h to make this compile,
but it should all be redundant pretty soon, so maybe not worth the
effort.

Side note: we might want to revisit how old kernels we want to
support. Especially for building, we may want to just require
something a bit more recent (maybe 3.10 or 3.12)?

Cheers,

Tom


More information about the systemd-devel mailing list