Joachim Breitner wrote:
> I think I got it: Cabal tries to infer what feature are supported by
> looking at the dependencies, and their flags, and mumble mumble complex
> search space.

Except while Cabal falls over, cabal-install does not.

For example:

joey@kite:~/git-annex>dpkg-checkbuilddeps 
dpkg-checkbuilddeps: Unmet build dependencies: libghc-dbus-dev (>= 0.10.7) 
libghc-fdo-notify-dev (>= 0.3) libghc-yesod-dev (>= 1.2.6.1) 
libghc-network-protocol-xmpp-dev (>= 0.4.3-1+b1)

joey@kite:~/git-annex>cabal configure >/dev/null || echo failed
joey@kite:~/git-annex>

(Used around 8 mb of memory)

joey@kite:~/git-annex>./Setup configure >/dev/null || echo failed
Killed
failed

(Used over 2 gb of memory)

Note that libghc-cabal-dev was installed, so that Setup should have been
built using version 1.22.1.1-2+b3.

So, why does Cabal's dependency resolver perform so much worse than
cabal-install's?

Note that git-annex 5.20150812 went back to using cabal configure,
rather than Setup configure, so I expect it will probably build
everywhere again. There seems to be a bug somewhere in the cabal system
however.

-- 
see shy jo

Attachment: signature.asc
Description: Digital signature

Reply via email to