[Haskell-cafe] Re: Why cabal forces reinstallation of happstack-utils?

Henning Thielemann schlepptop at henning-thielemann.de
Wed May 5 09:45:38 EDT 2010


Maciej Piechotka schrieb:
> On Wed, 2010-05-05 at 01:09 +0200, Daniel Fischer wrote:
>> On Mittwoch 05 Mai 2010 00:55:38, Maciej Piechotka wrote:
>>> I try to configure happstack with parsec 3.1. It seems to fail due to
>>> cabal:
>>>
>> happstack-util.cabal says parsec < 3, so --constraint="parsec > 3" and the 
>> given dependencies are incompatible, hence it can't be configured.
>>
>> Probably parsec < 3 was specified because parsec-3.0 was significantly 
>> slower than parsec-2.*.
> 
> I updated local copy, as shown, but cabal wants to rebuild it anyway. My
> question was rather why the repo is considered at all when the package
> is installed.

Surprisingly using plain Cabal (runhaskell Setup configure; runhaskell
Setup build; runhaskell Setup install) often works in these cases.
Cabal-install is somehow too clever and if it cannot resolve the
dependencies it thinks this must be impossible. If it finds a package,
that it could not have installed by itself, it tries to install it by
itself.

First I thought that this due to cabal-install trying to find
appropriate flag assignments by itself. However, Duncan Coutts told me
that plain Cabal tries this as well. I have no idea, what the key
difference between cabal-install and plain Cabal is.


More information about the Haskell-Cafe mailing list