diff --git a/ghc/compiler/compMan/CmLink.lhs b/ghc/compiler/compMan/CmLink.lhs
index a39ed3d9f931d606d944b8f81a2198bb7a1409d3..c645192d68e927182b459e4aff12c0d689996d2d 100644
--- a/ghc/compiler/compMan/CmLink.lhs
+++ b/ghc/compiler/compMan/CmLink.lhs
@@ -82,8 +82,12 @@ instance Outputable Linkable where
    ppr (LP package_nm)       = text "LinkableP" <+> ptext package_nm
 
 emptyPLS :: IO PersistentLinkerState
-emptyPLS = return (PersistentLinkerState { closure_env = emptyClosureEnv, 
-                                           itbl_env    = emptyItblEnv })
+#ifdef GHCI
+emptyPLS = return (PersistentLinkerState { closure_env = emptyFM, 
+                                           itbl_env    = emptyFM })
+#else
+emptyPLS = return (PersistentLinkerState {})
+#endif
 \end{code}
 
 \begin{code}