diff -ru src.orig//lib/libfec.c src/lib/libfec.c
--- src.orig//lib/libfec.c	2014-01-22 17:50:23.509740304 +0100
+++ src/lib/libfec.c	2014-01-22 17:55:04.777648001 +0100
@@ -45,6 +45,7 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
+#include <sys/types.h>
 
 /*
  * stuff used for testing purposes only
diff -ru src.orig//flash_erase.c src/flash_erase.c
--- src.orig//flash_erase.c	2014-01-22 17:48:14.981782482 +0100
+++ src/flash_erase.c	2014-01-22 17:49:07.037765399 +0100
@@ -20,6 +20,7 @@
 
 #define PROGRAM_NAME "flash_erase"
 
+#define _GNU_SOURCE
 #include <inttypes.h>
 #include <stdio.h>
 #include <unistd.h>
diff -ru src.orig//lib/libmtd.c src/lib/libmtd.c
--- src.orig//lib/libmtd.c	2014-01-22 17:48:14.981782482 +0100
+++ src/lib/libmtd.c	2014-01-22 17:49:41.945753944 +0100
@@ -21,6 +21,7 @@
  * MTD library.
  */
 
+#define _GNU_SOURCE
 #include <limits.h>
 #include <stdlib.h>
 #include <stdio.h>
diff -ru src.orig//lib/libmtd_legacy.c src/lib/libmtd_legacy.c
--- src.orig//lib/libmtd_legacy.c	2014-01-22 17:48:14.981782482 +0100
+++ src/lib/libmtd_legacy.c	2014-01-22 17:49:27.577758659 +0100
@@ -23,6 +23,7 @@
  * not possible to get sub-page size.
  */
 
+#define _GNU_SOURCE
 #include <limits.h>
 #include <fcntl.h>
 #include <unistd.h>
