diff --git a/unix/x0vncserver/Image.cxx b/unix/x0vncserver/Image.cxx
index f998c6a..7bb2328 100644
--- a/unix/x0vncserver/Image.cxx
+++ b/unix/x0vncserver/Image.cxx
@@ -24,10 +24,8 @@
 #include <stdlib.h>
 #include <sys/types.h>
 
-#ifdef HAVE_MITSHM
 #include <sys/ipc.h>
 #include <sys/shm.h>
-#endif
 
 #include <rfb/LogWriter.h>
 #include <x0vncserver/Image.h>
@@ -196,8 +194,6 @@
   updateRect(src->xim, dst_x, dst_y, src_x, src_y, w, h);
 }
 
-#ifdef HAVE_MITSHM
-
 //
 // ShmImage class implementation.
 //
@@ -429,7 +425,6 @@
 }
 
 #endif // HAVE_READDISPLAY
-#endif // HAVE_MITSHM
 
 #ifdef HAVE_SUN_OVL
 
@@ -490,7 +485,7 @@
 //
 
 // Prepare useful shortcuts for compile-time options.
-#if defined(HAVE_READDISPLAY) && defined(HAVE_MITSHM)
+#if defined(HAVE_READDISPLAY)
 #define HAVE_SHM_READDISPLAY
 #endif
 #if defined(HAVE_SHM_READDISPLAY) || defined(HAVE_SUN_OVL)
@@ -536,7 +531,6 @@
 
   // Now, try to use shared memory image.
 
-#ifdef HAVE_MITSHM
   if (mayUseShm) {
     image = new ShmImage(d, width, height);
     if (image->xim != NULL) {
@@ -546,7 +540,6 @@
     delete image;
     vlog.error("Failed to create SHM image, falling back to Xlib image");
   }
-#endif // HAVE_MITSHM
 
   // Fall back to Xlib image.
 
diff --git a/unix/x0vncserver/Image.h b/unix/x0vncserver/Image.h
index 4cac8b4..675b1fa 100644
--- a/unix/x0vncserver/Image.h
+++ b/unix/x0vncserver/Image.h
@@ -92,8 +92,6 @@
 // ShmImage uses MIT-SHM extension of an X server to get image data.
 //
 
-#ifdef HAVE_MITSHM
-
 #include <X11/extensions/XShm.h>
 
 class ShmImage : public Image {
@@ -167,7 +165,6 @@
 };
 
 #endif // HAVE_READDISPLAY
-#endif // HAVE_MITSHM
 
 //
 // SolarisOverlayImage uses SUN_OVL extension of an X server to get
