diff --git a/extras/libmemif/Makefile.am b/extras/libmemif/Makefile.am
index 292eb9c..759f5c4 100644
--- a/extras/libmemif/Makefile.am
+++ b/extras/libmemif/Makefile.am
@@ -80,10 +80,11 @@
 
 noinst_PROGRAMS = icmpr icmpr-epoll icmpr-mt
 
-check_PROGRAMS = unit_test
-
 include_HEADERS = src/libmemif.h src/memif.h
 
 lib_LTLIBRARIES = libmemif.la
 
+if USE_CHECK
+check_PROGRAMS = unit_test
 TESTS = $(check_PROGRAMS)
+endif
diff --git a/extras/libmemif/configure.ac b/extras/libmemif/configure.ac
index 30fd3dd..323e113 100644
--- a/extras/libmemif/configure.ac
+++ b/extras/libmemif/configure.ac
@@ -4,7 +4,8 @@
 AM_SILENT_RULES([yes])
 AC_PREFIX_DEFAULT([/usr])
 
-PKG_CHECK_MODULES([CHECK], [check])
+PKG_CHECK_MODULES([CHECK], [check], [HAVE_CHECK=1], [HAVE_CHECK=0])
+AM_CONDITIONAL([USE_CHECK],[test "$HAVE_CHECK" -eq 1])
 
 AC_PROG_CC
 
diff --git a/extras/libmemif/test/main_test.c b/extras/libmemif/test/main_test.c
index deb8acb..b7705c4 100644
--- a/extras/libmemif/test/main_test.c
+++ b/extras/libmemif/test/main_test.c
@@ -437,7 +437,7 @@
   qid = 0;
   if ((err =
        memif_buffer_alloc (conn, qid, bufs, max_buf,
-			   &buf)) != MEMIF_ERR_SUCCESS)
+			   &buf, 0)) != MEMIF_ERR_SUCCESS)
     ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err));
 
   ck_assert_uint_eq (buf, max_buf);
@@ -451,7 +451,7 @@
   qid = 1;
   if ((err =
        memif_buffer_alloc (conn, qid, bufs, max_buf,
-			   &buf)) != MEMIF_ERR_SUCCESS)
+			   &buf, 0)) != MEMIF_ERR_SUCCESS)
     ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err));
 
   ck_assert_uint_eq (buf, max_buf);
@@ -466,7 +466,7 @@
   qid = 2;
   if ((err =
        memif_buffer_alloc (conn, qid, bufs, max_buf,
-			   &buf)) != MEMIF_ERR_SUCCESS)
+			   &buf, 0)) != MEMIF_ERR_SUCCESS)
     ck_assert_msg (err == MEMIF_ERR_QID, "err code: %u, err msg: %s", err,
 		   memif_strerror (err));
 
@@ -528,7 +528,7 @@
   qid = 0;
   if ((err =
        memif_buffer_alloc (conn, qid, bufs, max_buf,
-			   &buf)) != MEMIF_ERR_SUCCESS)
+			   &buf, 0)) != MEMIF_ERR_SUCCESS)
     ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err));
 
   ck_assert_uint_eq (buf, max_buf);
@@ -549,7 +549,7 @@
   qid = 1;
   if ((err =
        memif_buffer_alloc (conn, qid, bufs, max_buf,
-			   &buf)) != MEMIF_ERR_SUCCESS)
+			   &buf, 0)) != MEMIF_ERR_SUCCESS)
     ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err));
 
   ck_assert_uint_eq (buf, max_buf);
