diff --git a/cabal-dir.cabal b/cabal-dir.cabal
--- a/cabal-dir.cabal
+++ b/cabal-dir.cabal
@@ -2,7 +2,7 @@
 -- documentation, see http://haskell.org/cabal/users-guide/
 
 name:                cabal-dir
-version:             0.1.0.1
+version:             0.1.0.2
 stability:           Experimental
 synopsis:            show dist dir of 'cabal copy/install'
 description:         
@@ -10,12 +10,7 @@
   .
   > % cabal configure
   > % cabal-dir
-  > bindir : /usr/local/bin
-  > libdir : /usr/local/lib/foo-0.1.2.3/ghc-8.8.8
-  > datadir: /usr/local/share/foo-0.1.2.3
-  > htmldir: /usr/local/share/doc/foo-0.1.2.3/html
-  >
-  > % cabal-dir /usr/local
+  > prefix : /usr/local/
   > bindir : bin
   > libdir : lib/foo-0.1.2.3/ghc-8.8.8
   > datadir: share/foo-0.1.2.3
@@ -36,9 +31,10 @@
 source-repository	this
   type:		git
   location:	git://github.com/YoshikuniJujo/cabal-dir.git
-  tag:		0.1.0.0
+  tag:		0.1.0.2
 
 executable cabal-dir
   main-is:             cabal-dir.hs
   -- other-modules:       
   build-depends:       base > 3 && < 5, directory, Cabal
+  ghc-options:         -Wall
diff --git a/cabal-dir.hs b/cabal-dir.hs
--- a/cabal-dir.hs
+++ b/cabal-dir.hs
@@ -1,3 +1,5 @@
+module Main(main) where
+
 import Distribution.Simple.LocalBuildInfo(
 	LocalBuildInfo, CopyDest(..), absoluteInstallDirs)
 import qualified Distribution.Simple.LocalBuildInfo as LBI
@@ -7,15 +9,11 @@
 import Distribution.PackageDescription
 import Distribution.Verbosity
 
-import Distribution.Package
-import Distribution.Version
-
 import System.Directory
 import Data.List
 
-import System.Environment
-
 data InstallDirs = InstallDirs {
+	prefix :: FilePath,
 	bindir :: FilePath,
 	libdir :: FilePath,
 	datadir :: FilePath,
@@ -39,6 +37,7 @@
 	pd <- getPackageDescription
 	let dirs = absoluteInstallDirs pd lbi NoCopyDest
 	return $ InstallDirs {
+		prefix = LBI.prefix dirs,
 		bindir = LBI.bindir dirs,
 		libdir = LBI.libdir dirs,
 		datadir = LBI.datadir dirs,
@@ -47,24 +46,20 @@
 
 showInstallDirsGen :: (FilePath -> String) -> InstallDirs -> String
 showInstallDirsGen sw InstallDirs {
+	prefix = px,
 	bindir = bd,
 	libdir = ld,
 	datadir = dd,
 	htmldir = hd } =
+	"prefix : " ++ px ++ "/\n" ++
 	"bindir : " ++ sw bd ++ "\n" ++
 	"libdir : " ++ sw ld ++ "\n" ++
 	"datadir: " ++ sw dd ++ "\n" ++
 	"htmldir: " ++ sw hd ++ "\n"
 
-showInstallDirs :: InstallDirs -> String
-showInstallDirs = showInstallDirsGen id
-
 showRPInstallDirs :: FilePath -> InstallDirs -> String
 showRPInstallDirs = showInstallDirsGen . removePrefix
 
-printInstallDirs :: InstallDirs -> IO ()
-printInstallDirs = putStr . showInstallDirs
-
 printRPInstallDirs :: FilePath -> InstallDirs -> IO ()
 printRPInstallDirs p = putStr . showRPInstallDirs p
 
@@ -76,9 +71,5 @@
 
 main :: IO ()
 main = do
-	args <- getArgs
-	let prfx = case args of
-		[] -> ""
-		[p] -> p
-		_ -> error "bad arguments"
-	getInstallDirs >>= printRPInstallDirs prfx
+	dirs <- getInstallDirs
+	printRPInstallDirs (prefix dirs) dirs
