Include <sys/types.h> to get the u_int* definitions This is needed to fix the build with the musl C library, and this patch comes from http://git.alpinelinux.org/cgit/aports/plain/main/libnfnetlink/musl-fix-includes.patch. It will no longer be needed with upcoming upstream releases of libnfnetlink, since they have switched to use the <stdint.h> types instead. However this change was too invasive to backport. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> --- libnfnetlink-1.0.1.orig/include/libnfnetlink/linux_nfnetlink.h +++ libnfnetlink-1.0.1/include/libnfnetlink/linux_nfnetlink.h @@ -1,6 +1,6 @@ #ifndef _NFNETLINK_H #define _NFNETLINK_H -#include <linux/types.h> +#include <sys/types.h> #include <libnfnetlink/linux_nfnetlink_compat.h> enum nfnetlink_groups { --- libnfnetlink-1.0.1.orig/include/libnfnetlink/libnfnetlink.h +++ libnfnetlink-1.0.1/include/libnfnetlink/libnfnetlink.h @@ -15,6 +15,7 @@ #define aligned_u64 unsigned long long __attribute__((aligned(8))) #endif +#include <sys/types.h> #include <sys/socket.h> /* for sa_family_t */ #include <linux/netlink.h> #include <libnfnetlink/linux_nfnetlink.h>