diff --git a/configure b/configure
index 3006070583e3478a951576b3d34da31059bfd735..86eab077eb9169bc6a2f172ab22965f28b6f006a 100755
--- a/configure
+++ b/configure
@@ -10200,6 +10200,7 @@ if test "x$ac_cv_header_gnutls_gnutls_h" = xyes; then :
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <gnutls/gnutls.h>
+#include <gnutls/crypto.h>
 int
 main ()
 {
diff --git a/configure.ac b/configure.ac
index 680432c85547aa8d731912d150dd11083720bd60..a01b44c1bf12a0e332de2457f8eb343e949d2b9e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1344,7 +1344,8 @@ then
     ac_save_CPPFLAGS="$CPPFLAGS"
     WINE_PACKAGE_FLAGS(GNUTLS,[gnutls])
     AC_CHECK_HEADER(gnutls/gnutls.h,
-        [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <gnutls/gnutls.h>]], [[static typeof(gnutls_mac_get_key_size) *func; if (func) return 0;]])],
+        [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <gnutls/gnutls.h>
+#include <gnutls/crypto.h>]], [[static typeof(gnutls_mac_get_key_size) *func; if (func) return 0;]])],
             [WINE_CHECK_SONAME(gnutls,gnutls_global_init,,[GNUTLS_CFLAGS=""],[$GNUTLS_LIBS])])],
         [GNUTLS_CFLAGS=""])
     CPPFLAGS="$ac_save_CPPFLAGS"
diff --git a/dlls/secur32/schannel_gnutls.c b/dlls/secur32/schannel_gnutls.c
index 70b827660f8e216532c9bec91f96b6b1886c42dd..cbe64e863bfa7993c30fdca4afe60f4a9999f465 100644
--- a/dlls/secur32/schannel_gnutls.c
+++ b/dlls/secur32/schannel_gnutls.c
@@ -25,6 +25,7 @@
 #include <stdarg.h>
 #ifdef SONAME_LIBGNUTLS
 #include <gnutls/gnutls.h>
+#include <gnutls/crypto.h>
 #endif
 
 #include "windef.h"