--- a/common.mk
+++ b/common.mk
@@ -95,6 +95,7 @@ COMMONOBJS    = array.$(OBJEXT) \
 		vm_trace.$(OBJEXT) \
 		thread.$(OBJEXT) \
 		cont.$(OBJEXT) \
+		ext/zlib/zlib.$(OBJEXT) \
 		$(BUILTIN_ENCOBJS) \
 		$(BUILTIN_TRANSOBJS) \
 		$(MISSING)
diff --git a/ruby-2.1.5.orig/configure b/ruby-2.1.5/configure
index d0f1f68..45ab642 100755
--- a/configure
+++ b/configure
@@ -2838,6 +2838,8 @@ ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
 
 
 
+LIBS="$LIBS -lz"
+
 { # environment section
 
 
--- a/configure.in
+++ b/configure.in
@@ -31,6 +31,8 @@ rm() {
 }
 ])])])
 
+LIBS="$LIBS -lz"
+
 { # environment section
 
 AC_ARG_WITH(baseruby,
--- a/inits.c
+++ b/inits.c
@@ -61,5 +61,6 @@ rb_call_inits(void)
     CALL(Complex);
     CALL(version);
     CALL(vm_trace);
+    CALL(zlib);
 }
 #undef CALL