Newbie: Can't understand cabal errors during install of hakyll

Hi, Been with Haskell just for few days, and thought it would be a good exercise to run a static site generator to get familiar with various tools, and I’m already running into “cabal hell” I think. :( $ cabal install hakyll Resolving dependencies... cabal: Could not resolve dependencies: trying: hakyll-4.7.2.0 (user goal) next goal: time (dependency of hakyll-4.7.2.0) rejecting: time-1.4.2/installed-d67... (conflict: hakyll => time>=1.5 && <1.6) trying: time-1.5.0.1 trying: process-1.2.0.0/installed-3a4... (dependency of hakyll-4.7.2.0) next goal: unix (dependency of process-1.2.0.0/installed-3a4...) rejecting: unix-2.7.0.1/installed-8ad... (conflict: time==1.5.0.1, unix => time==1.4.2/installed-d67...) rejecting: unix-2.7.1.0, 2.7.0.1, 2.7.0.0, 2.6.0.1, 2.6.0.0, 2.5.1.1, 2.5.1.0, 2.5.0.0, 2.4.2.0, 2.4.1.0, 2.4.0.2, 2.4.0.1, 2.4.0.0, 2.3.2.0, 2.3.1.0, 2.3.0.0, 2.2.0.0, 2.0 (conflict: process => unix==2.7.0.1/installed-8ad...) Backjump limit reached (change with --max-backjumps). I’m running OS X Yosemite 10.2.2 with all the latest versions of Haskell and cabal. Thanks you for listening. :) Peder

It seems like you have time-1.4.2 installed, the latest GHC (7.10) comes
with time 1.5.*. Are you sure you are on 7.10?
The core of the problem is that hakyll needs time >= 1.5, and unix is using
the pre-installed time-1.4.2. This is rejected because only one version of
a library can be used in the same install plan.
As the error message suggests you can you increase the backjump limit so
I'd try that first. I typically pass --reorder-goals --max-backjumps=-1 to
cabal-install. Running this sometimes takes a long time, but it will finish
eventually.
You can also try installing an older version of hakyll that works with
time-1.4.2 (see the hackage page for info on older versions).
Lastly, are you using a sandbox? It also helps with reducing problems. I
never install anything in the global or user level package db, only in
sandboxes.
HTH,
Adam
On Sat, Aug 1, 2015 at 2:36 PM, Peder Jakobsen
Hi,
Been with Haskell just for few days, and thought it would be a good exercise to run a static site generator to get familiar with various tools, and I’m already running into “cabal hell” I think. :(
$ cabal install hakyll Resolving dependencies... cabal: Could not resolve dependencies: trying: hakyll-4.7.2.0 (user goal) next goal: time (dependency of hakyll-4.7.2.0) rejecting: time-1.4.2/installed-d67... (conflict: hakyll => time>=1.5 && <1.6) trying: time-1.5.0.1 trying: process-1.2.0.0/installed-3a4... (dependency of hakyll-4.7.2.0) next goal: unix (dependency of process-1.2.0.0/installed-3a4...) rejecting: unix-2.7.0.1/installed-8ad... (conflict: time==1.5.0.1, unix => time==1.4.2/installed-d67...) rejecting: unix-2.7.1.0, 2.7.0.1, 2.7.0.0, 2.6.0.1, 2.6.0.0, 2.5.1.1, 2.5.1.0, 2.5.0.0, 2.4.2.0, 2.4.1.0, 2.4.0.2, 2.4.0.1, 2.4.0.0, 2.3.2.0, 2.3.1.0, 2.3.0.0, 2.2.0.0, 2.0 (conflict: process => unix==2.7.0.1/installed-8ad.. .) Backjump limit reached (change with --max-backjumps).
I’m running OS X Yosemite 10.2.2 with all the latest versions of Haskell and cabal.
Thanks you for listening. :)
Peder
_______________________________________________ cabal-devel mailing list cabal-devel@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/cabal-devel

I sent a pull request to add time 1.4.* support to hakyll:
https://github.com/jaspervdj/hakyll/pull/360
Might make it easier for <7.10 users in the future.
- Adam
On Sat, Aug 1, 2015 at 3:34 PM, Adam Bergmark
It seems like you have time-1.4.2 installed, the latest GHC (7.10) comes with time 1.5.*. Are you sure you are on 7.10?
The core of the problem is that hakyll needs time >= 1.5, and unix is using the pre-installed time-1.4.2. This is rejected because only one version of a library can be used in the same install plan.
As the error message suggests you can you increase the backjump limit so I'd try that first. I typically pass --reorder-goals --max-backjumps=-1 to cabal-install. Running this sometimes takes a long time, but it will finish eventually.
You can also try installing an older version of hakyll that works with time-1.4.2 (see the hackage page for info on older versions).
Lastly, are you using a sandbox? It also helps with reducing problems. I never install anything in the global or user level package db, only in sandboxes.
HTH, Adam
On Sat, Aug 1, 2015 at 2:36 PM, Peder Jakobsen
wrote: Hi,
Been with Haskell just for few days, and thought it would be a good exercise to run a static site generator to get familiar with various tools, and I’m already running into “cabal hell” I think. :(
$ cabal install hakyll Resolving dependencies... cabal: Could not resolve dependencies: trying: hakyll-4.7.2.0 (user goal) next goal: time (dependency of hakyll-4.7.2.0) rejecting: time-1.4.2/installed-d67... (conflict: hakyll => time>=1.5 && <1.6) trying: time-1.5.0.1 trying: process-1.2.0.0/installed-3a4... (dependency of hakyll-4.7.2.0) next goal: unix (dependency of process-1.2.0.0/installed-3a4...) rejecting: unix-2.7.0.1/installed-8ad... (conflict: time==1.5.0.1, unix => time==1.4.2/installed-d67...) rejecting: unix-2.7.1.0, 2.7.0.1, 2.7.0.0, 2.6.0.1, 2.6.0.0, 2.5.1.1, 2.5.1.0, 2.5.0.0, 2.4.2.0, 2.4.1.0, 2.4.0.2, 2.4.0.1, 2.4.0.0, 2.3.2.0, 2.3.1.0, 2.3.0.0, 2.2.0.0, 2.0 (conflict: process => unix==2.7.0.1/installed-8ad.. .) Backjump limit reached (change with --max-backjumps).
I’m running OS X Yosemite 10.2.2 with all the latest versions of Haskell and cabal.
Thanks you for listening. :)
Peder
_______________________________________________ cabal-devel mailing list cabal-devel@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/cabal-devel

Hi Adam, I upgraded to ghc version 7.10.2 — that seems to have fixed the problem.
On Aug 1, 2015, at 9:34 AM, Adam Bergmark
wrote: Lastly, are you using a sandbox? It also helps with reducing problems. I never install anything in the global or user level package db, only in sandboxes
Yes, I’m using a sandbox, although made the mistake of not using --only-dependencies when I did $ cabal install hakyll, and it’s been 20+ minutes, and my CPU is still grinding away. ;) It’s nothing like Python pip so far, but I’m sure there are good reasons why (e.g., need to compile every dependency) Thanks again P.
participants (2)
-
Adam Bergmark
-
Peder Jakobsen