diff --git a/System/Log/FastLogger.hs b/System/Log/FastLogger.hs
--- a/System/Log/FastLogger.hs
+++ b/System/Log/FastLogger.hs
@@ -1,6 +1,7 @@
 -- | This module provides a fast logging system which
 --   scales on multicore environments (i.e. +RTS -N\<x\>).
 {-# LANGUAGE BangPatterns, CPP #-}
+{-# LANGUAGE Safe #-}
 
 module System.Log.FastLogger (
   -- * Creating a logger set
diff --git a/System/Log/FastLogger/File.hs b/System/Log/FastLogger/File.hs
--- a/System/Log/FastLogger/File.hs
+++ b/System/Log/FastLogger/File.hs
@@ -1,3 +1,5 @@
+{-# LANGUAGE Safe #-}
+
 module System.Log.FastLogger.File where
 
 import Control.Monad (unless, when)
diff --git a/System/Log/FastLogger/IO.hs b/System/Log/FastLogger/IO.hs
--- a/System/Log/FastLogger/IO.hs
+++ b/System/Log/FastLogger/IO.hs
@@ -1,4 +1,5 @@
 {-# LANGUAGE BangPatterns #-}
+{-# LANGUAGE Trustworthy #-}
 
 module System.Log.FastLogger.IO where
 
diff --git a/System/Log/FastLogger/IORef.hs b/System/Log/FastLogger/IORef.hs
--- a/System/Log/FastLogger/IORef.hs
+++ b/System/Log/FastLogger/IORef.hs
@@ -1,4 +1,5 @@
 {-# LANGUAGE CPP #-}
+{-# LANGUAGE Safe #-}
 
 module System.Log.FastLogger.IORef (
        IORef
diff --git a/System/Log/FastLogger/LogStr.hs b/System/Log/FastLogger/LogStr.hs
--- a/System/Log/FastLogger/LogStr.hs
+++ b/System/Log/FastLogger/LogStr.hs
@@ -1,5 +1,6 @@
 {-# LANGUAGE CPP #-}
 {-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE Safe #-}
 
 module System.Log.FastLogger.LogStr (
     Builder
@@ -13,9 +14,9 @@
 
 import Data.ByteString.Builder (Builder)
 import qualified Data.ByteString.Builder as B
+import Data.ByteString (ByteString)
 import qualified Data.ByteString as BS
 import qualified Data.ByteString.Char8 as S8
-import Data.ByteString.Internal (ByteString(..))
 import qualified Data.ByteString.Lazy as BL
 #if __GLASGOW_HASKELL__ < 709
 import Data.Monoid (Monoid, mempty, mappend)
@@ -40,7 +41,11 @@
 toBuilder = B.byteString
 
 fromBuilder :: Builder -> ByteString
+#if MIN_VERSION_bytestring(0,10,0)
 fromBuilder = BL.toStrict . B.toLazyByteString
+#else
+fromBuilder = BS.concat . BL.toChunks . B.toLazyByteString
+#endif
 
 ----------------------------------------------------------------
 
diff --git a/System/Log/FastLogger/Logger.hs b/System/Log/FastLogger/Logger.hs
--- a/System/Log/FastLogger/Logger.hs
+++ b/System/Log/FastLogger/Logger.hs
@@ -1,4 +1,5 @@
 {-# LANGUAGE BangPatterns, CPP #-}
+{-# LANGUAGE Safe #-}
 
 module System.Log.FastLogger.Logger (
     Logger(..)
diff --git a/fast-logger.cabal b/fast-logger.cabal
--- a/fast-logger.cabal
+++ b/fast-logger.cabal
@@ -1,5 +1,5 @@
 Name:                   fast-logger
-Version:                2.4.0
+Version:                2.4.1
 Author:                 Kazu Yamamoto <kazu@iij.ad.jp>
 Maintainer:             Kazu Yamamoto <kazu@iij.ad.jp>
 License:                BSD3
@@ -19,7 +19,7 @@
                         System.Log.FastLogger.IORef
                         System.Log.FastLogger.LogStr
                         System.Log.FastLogger.Logger
-  Build-Depends:        base >= 4 && < 5
+  Build-Depends:        base >= 4.4 && < 5
                       , array
                       , auto-update >= 0.1.2
                       , bytestring
