[xmonad] Cabal compiles twice?

Don Stewart dons at galois.com
Sat Feb 16 22:50:22 EST 2008


mike:
> Hello all,
> 
> Whenever I compile Xmonad using cabal, it seems to compile twice. I'm 
> new to haskell so perhaps I just don't understand what I'm looking at:

Cabal currently doesn't support building an executable, and a library,
without recompiling the source, unfortunately.

The Cabal devs know about this, and hope to fix it soon.
There should be a ticket about it on the Cabal trac database.

> 
> >$ runhaskell Setup configure --prefix=$HOME/usr --user
> >Configuring xmonad-0.6...
> >$ runhaskell Setup build
> >Preprocessing library xmonad-0.6...
> >Preprocessing executables for xmonad-0.6...
> >Building xmonad-0.6...
> >[1 of 8] Compiling XMonad.StackSet  ( XMonad/StackSet.hs, 
> >dist/build/XMonad/StackSet.o )
> >[2 of 8] Compiling XMonad.Core      ( XMonad/Core.hs, 
> >dist/build/XMonad/Core.o )
> >[3 of 8] Compiling XMonad.Layout    ( XMonad/Layout.hs, 
> >dist/build/XMonad/Layout.o )
> >[4 of 8] Compiling XMonad.Operations ( XMonad/Operations.hs, 
> >dist/build/XMonad/Operations.o )
> >[5 of 8] Compiling XMonad.ManageHook ( XMonad/ManageHook.hs, 
> >dist/build/XMonad/ManageHook.o )
> >[6 of 8] Compiling XMonad.Config    ( XMonad/Config.hs, 
> >dist/build/XMonad/Config.o )
> >[7 of 8] Compiling XMonad.Main      ( XMonad/Main.hs, 
> >dist/build/XMonad/Main.o )
> >[8 of 8] Compiling XMonad           ( XMonad.hs, dist/build/XMonad.o )
> >/usr/bin/ar: creating dist/build/libHSxmonad-0.6.a
> >[ 1 of 10] Compiling Paths_xmonad     ( 
> >dist/build/autogen/Paths_xmonad.hs, 
> >dist/build/xmonad/xmonad-tmp/Paths_xmonad.o )
> >[ 2 of 10] Compiling XMonad.StackSet  ( XMonad/StackSet.hs, 
> >dist/build/xmonad/xmonad-tmp/XMonad/StackSet.o )
> >[ 3 of 10] Compiling XMonad.Core      ( XMonad/Core.hs, 
> >dist/build/xmonad/xmonad-tmp/XMonad/Core.o )
> >[ 4 of 10] Compiling XMonad.Layout    ( XMonad/Layout.hs, 
> >dist/build/xmonad/xmonad-tmp/XMonad/Layout.o )
> >[ 5 of 10] Compiling XMonad.Operations ( XMonad/Operations.hs, 
> >dist/build/xmonad/xmonad-tmp/XMonad/Operations.o )
> >[ 6 of 10] Compiling XMonad.ManageHook ( XMonad/ManageHook.hs, 
> >dist/build/xmonad/xmonad-tmp/XMonad/ManageHook.o )
> >[ 7 of 10] Compiling XMonad.Config    ( XMonad/Config.hs, 
> >dist/build/xmonad/xmonad-tmp/XMonad/Config.o )
> >[ 8 of 10] Compiling XMonad.Main      ( XMonad/Main.hs, 
> >dist/build/xmonad/xmonad-tmp/XMonad/Main.o )
> >[ 9 of 10] Compiling XMonad           ( XMonad.hs, 
> >dist/build/xmonad/xmonad-tmp/XMonad.o )
> >[10 of 10] Compiling Main             ( ./Main.hs, 
> >dist/build/xmonad/xmonad-tmp/Main.o )
> >Linking dist/build/xmonad/xmonad ...
> >$
> 
> Shouldn't the /usr/bin/ar step use
>   dist/build/XMonad/StackSet.o
> rather than compile again to
>   dist/build/xmonad/xmonad-tmp/XMonad/StackSet.o
> ?
> Am I doing something wrong, or is this normal? If it is the norm, I'd
> appreciate a link to where I can learn about why it's not doing what I'd
> expect.
> 
> I'm hoping I might save my poor, slow laptop from a lot of hard thinking
> every time I re-compile.
> 
> Thanks
> -- 
> Mike
> _______________________________________________
> xmonad mailing list
> xmonad at haskell.org
> http://www.haskell.org/mailman/listinfo/xmonad


More information about the xmonad mailing list