diff --git a/src/aakbdreg.c b/src/aakbdreg.c
index f4f8efb..b344dd8 100644
--- a/src/aakbdreg.c
+++ b/src/aakbdreg.c
@@ -1,2 +1,3 @@
 #include <stdlib.h>
+#include <string.h> /* strcmp */
 #include "config.h"
diff --git a/src/aalinuxkbd.c b/src/aalinuxkbd.c
index a5379bb..e816eb2 100644
--- a/src/aalinuxkbd.c
+++ b/src/aalinuxkbd.c
@@ -10,2 +10,3 @@
 #include "config.h"
+#include <stdlib.h> /* atexit */
 #ifdef LINUX_DRIVER
@@ -135,3 +136,3 @@ static int get_keyb_map(void)
 
-	if (ioctl(tty_fd, KDGKBENT, (unsigned int) &keyb_ent))
+	if (ioctl(tty_fd, KDGKBENT, &keyb_ent))
 	    return (0);
@@ -144,3 +145,3 @@ static int get_keyb_map(void)
 
-	if (ioctl(tty_fd, KDGKBENT, (unsigned int) &keyb_ent))
+	if (ioctl(tty_fd, KDGKBENT, &keyb_ent))
 	    return (0);
@@ -200,3 +201,3 @@ static int rawmode_init(void)
     if (!closed)
-	return;
+	return (1);
     mypid = getpid();
diff --git a/src/aamoureg.c b/src/aamoureg.c
index bb55fe3..4a533b6 100644
--- a/src/aamoureg.c
+++ b/src/aamoureg.c
@@ -1,2 +1,3 @@
 #include <stdlib.h>
+#include <string.h> /* strcmp */
 #include "config.h"
diff --git a/src/aaregist.c b/src/aaregist.c
index 765155e..f9190ab 100644
--- a/src/aaregist.c
+++ b/src/aaregist.c
@@ -1,2 +1,3 @@
 #include <stdlib.h>
+#include <string.h> /* strcmp */
 #include "config.h"
diff --git a/src/aaxkbd.c b/src/aaxkbd.c
index dacc80f..c252cd9 100644
--- a/src/aaxkbd.c
+++ b/src/aaxkbd.c
@@ -7,2 +7,3 @@
 #include <X11/Xlib.h>
+#include <X11/Xutil.h>
 #include <X11/keysymdef.h>