
tom.davie:
On 19 Apr 2009, at 11:10, Duncan Coutts wrote:
On Sun, 2009-04-19 at 10:02 +0200, Thomas Davie wrote:
It really rather makes "cabal install" rather odd – because it doesn't actually install anything you can use without providing extra options!
It should work fine, you'll need to give more details.
This has been the result, at least every time I've installed ghc:
$ cabal install xyz
So this does a per-user install.
$ runhaskell Setup.hs configure -- where abc depends on xyz
This does a global install. Global packages cannot depend on user packages. You have two choices:
$ cabal configure
because the cabal program does --user installs by default or use
$ runhaskell Setup.hs configure --user
which explicitly does a --user install.
The reason for this confusion is because the original runghc Setup interface started with global installs and we can't easily change that default. On the other hand, per-user installs are much more convenient so that's the sensible default for the 'cabal' command line program.
I don't understand what makes user installs more convenient. Certainly, my preference would be for global all the time – I expect something that says it's going to "install" something to install it onto my computer, like any other installation program does. What is it that makes user installs more convenient in this situation?
You don't need 'sudo' access for user installs. This means that 'cabal install' works out of the box on every system, without needing admin/root privs (esp. important for students). -- Don