--- a/gencat/genlib.c
+++ b/gencat/genlib.c
@@ -48,9 +48,11 @@
 */
 
 #include <stdio.h>
+#include <stdlib.h>
 #ifdef SYSV
 #include <sys/types.h>
 #include <unistd.h>
+#endif
 
 #ifndef __linux__
 #include <memory.h>
@@ -66,9 +68,10 @@
 {
     memset(b, '\0', length);
 }
-#endif
-
-#endif
+#else
+#include <string.h>
+#endif
+
 #include <sys/file.h>
 #include <ctype.h>
 #include "msgcat.h"