diff --git a/cabal-install/Distribution/Client/CmdInstall.hs b/cabal-install/Distribution/Client/CmdInstall.hs
index 4238324559d25182b7a33de4d929a468b5226800..38421b73d954c6077f8e2d99c81c4cf422328157 100644
--- a/cabal-install/Distribution/Client/CmdInstall.hs
+++ b/cabal-install/Distribution/Client/CmdInstall.hs
@@ -58,7 +58,8 @@ import Distribution.Types.UnqualComponentName
 import Distribution.Verbosity
          ( Verbosity, normal )
 import Distribution.Simple.Utils
-         ( wrapText, die', withTempDirectory, createDirectoryIfMissingVerbose )
+         ( wrapText, die', notice
+         , withTempDirectory, createDirectoryIfMissingVerbose )
 
 import qualified Data.Map as Map
 import System.Directory ( getTemporaryDirectory, makeAbsolute )
@@ -195,7 +196,7 @@ installAction (configFlags, configExFlags, installFlags, haddockFlags)
                    $ projectConfigBuildOnly
                    $ projectConfig $ baseCtx
     createDirectoryIfMissingVerbose verbosity False symlinkBindir
-    traverse_ (symlinkBuiltPackage mkPkgBinDir symlinkBindir)
+    traverse_ (symlinkBuiltPackage verbosity mkPkgBinDir symlinkBindir)
           $ Map.toList $ targetsMap buildCtx
     runProjectPostBuildPhase verbosity baseCtx buildCtx buildOutcomes
   where
@@ -213,22 +214,24 @@ disableTestsBenchsByDefault configFlags =
               , configBenchmarks = Flag False <> configBenchmarks configFlags }
 
 -- | Symlink every exe from a package from the store to a given location
-symlinkBuiltPackage :: (UnitId -> FilePath) -- ^ A function to get an UnitId's
+symlinkBuiltPackage :: Verbosity
+                    -> (UnitId -> FilePath) -- ^ A function to get an UnitId's
                                             -- store directory
                     -> FilePath -- ^ Where to put the symlink
                     -> ( UnitId
                         , [(ComponentTarget, [TargetSelector])] )
                      -> IO ()
-symlinkBuiltPackage mkSourceBinDir destDir (pkg, components) =
-  traverse_ (symlinkBuiltExe (mkSourceBinDir pkg) destDir) exes
+symlinkBuiltPackage verbosity mkSourceBinDir destDir (pkg, components) =
+  traverse_ (symlinkBuiltExe verbosity (mkSourceBinDir pkg) destDir) exes
   where
     exes = catMaybes $ (exeMaybe . fst) <$> components
     exeMaybe (ComponentTarget (CExeName exe) _) = Just exe
     exeMaybe _ = Nothing
 
 -- | Symlink a specific exe.
-symlinkBuiltExe :: FilePath -> FilePath -> UnqualComponentName -> IO Bool
-symlinkBuiltExe sourceDir destDir exe =
+symlinkBuiltExe :: Verbosity -> FilePath -> FilePath -> UnqualComponentName -> IO Bool
+symlinkBuiltExe verbosity sourceDir destDir exe = do
+  notice verbosity $ "Symlinking " ++ unUnqualComponentName exe
   symlinkBinary
     destDir
     sourceDir