diff --git sysdep.c sysdep.c
index ff07753..43fdb74 100644
--- sysdep.c
+++ sysdep.c
@@ -59,7 +59,9 @@
 #if defined(__DragonFly__)
 #include <net/tun/if_tun.h>
 #elif defined(__linux__)
+#ifdef __GLIBC__
 #include <linux/if_tun.h>
+#endif
 #elif defined(__APPLE__)
 /* no header for tun */
 #elif defined(__CYGWIN__)
diff --git sysdep.h sysdep.h
index a5eafd6..af34e94 100644
--- sysdep.h
+++ sysdep.h
@@ -38,11 +38,13 @@ int tun_get_hwaddr(int fd, char *dev, uint8_t *hwaddr);
 
 /***************************************************************************/
 #if defined(__linux__) || defined(__GLIBC__)
+#ifdef __GLIBC__
 #include <error.h>
+#define HAVE_ERROR     1
+#endif
 
 #define HAVE_VASPRINTF 1
 #define HAVE_ASPRINTF  1
-#define HAVE_ERROR     1
 #define HAVE_GETLINE   1
 #define HAVE_UNSETENV  1
 #define HAVE_SETENV    1
