diff --git a/src/configure.in b/src/configure.in
index a9aeb5522478f93fa54b48649b7858b0cacf8133..3fbcd29a558ea0f29f7784889b6eaeb5faf1a49a 100644
--- a/src/configure.in
+++ b/src/configure.in
@@ -5041,6 +5041,7 @@ MY_CHECK_FUNCTION(infnan,
 [
 #include <errno.h>
 #include <math.h>
+#include <stdlib.h>
 ], [
   double pinf = infnan(ERANGE);
   double ninf = infnan(-ERANGE);
@@ -5051,6 +5052,7 @@ MY_CHECK_FUNCTION(infnan,
 MY_CHECK_FUNCTION(_isnan,
 [
 #include <float.h>
+#include <stdlib.h>
 ], [
   exit(_isnan(0.0));
 ])
@@ -6523,6 +6525,11 @@ AC_CACHE_VAL(pike_cv_sys_signal_oneshot,
 #ifdef HAVE_POLL_H
 #include <poll.h>
 #endif
+#include <string.h>
+#include <stdio.h>
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
 VOLATILE sig_atomic_t sigrun[2]= { 0, 0 };
 RETSIGTYPE func(int sig)
 {
@@ -6734,6 +6741,7 @@ AC_CACHE_VAL(pike_cv_lc___declspec,
   AC_TRY_RUN([
 #include <stdlib.h>
 #include <stdarg.h>
+#include <stdio.h>
 __declspec(noreturn) void fatal(char *foo,...);
 
 __declspec(noreturn) void fatal(char *foo,...)
@@ -6752,6 +6760,7 @@ int main() {  exit(0); }
     AC_TRY_LINK([
 #include <stdlib.h>
 #include <stdarg.h>
+#include <stdio.h>
 __declspec(noreturn) void fatal(char *foo,...);
 
 __declspec(noreturn) void fatal(char *foo,...)
diff --git a/src/modules/Mysql/configure.in b/src/modules/Mysql/configure.in
index 8ae158e17f617f235ba49db5bc5b91c047915c77..cd26b78fefa71399017226ee5be06035841992b6 100644
--- a/src/modules/Mysql/configure.in
+++ b/src/modules/Mysql/configure.in
@@ -448,6 +448,7 @@ fi
 #endif
 #endif
 #include <stdio.h>
+#include <stdlib.h>
 int main(int argc, char *argv[])
 {
 #ifdef MYSQL_VERSION_ID
diff --git a/src/modules/Wnotify/configure.in b/src/modules/Wnotify/configure.in
index aa4a01e99628bc108e174ee03b51a5d18bd4da4a..4974c20e2da6899ef015b52abcc9d970e5f47fae 100644
--- a/src/modules/Wnotify/configure.in
+++ b/src/modules/Wnotify/configure.in
@@ -15,6 +15,7 @@ MY_CHECK_FUNCTION(FindFirstChangeNotification,
 #ifdef HAVE_FILEAPI_H
 #include <FileAPI.h>
 #endif
+#include <stdlib.h>
 ], [
   FindFirstChangeNotification("", 0, 0);
   exit(0);
diff --git a/src/modules/_Image_JPEG/configure.in b/src/modules/_Image_JPEG/configure.in
index 84a2042252fa2f8590fc598b9cf420a75b1e2831..641a28ac588d0d71c5cb0f9dcba45ba4590f50b7 100644
--- a/src/modules/_Image_JPEG/configure.in
+++ b/src/modules/_Image_JPEG/configure.in
@@ -19,6 +19,7 @@ if test x$with_jpeglib = xyes ; then
       AC_CACHE_VAL(pike_cv_jpeg_jerr_bad_crop_spec, [
         AC_TRY_COMPILE([
 #include <jerror.h>
+#include <stdlib.h>
 int main(int argc, char **argv)
 {
   int err = JERR_BAD_CROP_SPEC;
diff --git a/src/modules/_Image_TTF/configure.in b/src/modules/_Image_TTF/configure.in
index 836f976755f95c12b375663554a774613a3f9d6a..ea89873e0fb41072332f75bd6d824c6015232018 100644
--- a/src/modules/_Image_TTF/configure.in
+++ b/src/modules/_Image_TTF/configure.in
@@ -64,6 +64,7 @@ if test x$with_ttflib = xyes ; then
       AC_CACHE_VAL(pike_cv_lib_ttf_works, [
         AC_TRY_RUN([
 #include <stdio.h>
+#include <stdlib.h>
 #if defined(HAVE_FREETYPE_FREETYPE_H) && defined(HAVE_FREETYPE_FTXKERN_H)
 
 #include <freetype/freetype.h>
diff --git a/src/modules/_Image_XFace/configure.in b/src/modules/_Image_XFace/configure.in
index cefd3495d6708c90b966bee21a3975395e6606f3..d4594b6eb8a1b1039191a398b42a2b7cb0c98f41 100755
--- a/src/modules/_Image_XFace/configure.in
+++ b/src/modules/_Image_XFace/configure.in
@@ -87,6 +87,7 @@ dnl    undefine(PIKE_PREFIX_NAME)
       LIBS="${LIBS-} -l$1"
       AC_TRY_RUN([
 #include <stdio.h>
+#include <stdlib.h>
 
 /* Kludge for some compilers only defining __STDC__ in strict mode. */
 #if !defined(__STDC__) && defined(HAVE_ANSI_CONCAT) && defined(PIKE_MPN_PREFIX)