Last active
August 29, 2015 14:03
-
-
Save duelinmarkers/a027446d56ee8dcb6c0d to your computer and use it in GitHub Desktop.
Idris install via cabal fails
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
$ cabal install idris | |
Resolving dependencies... | |
cabal: Could not resolve dependencies: | |
trying: idris-0.9.13.1 (user goal) | |
trying: optparse-applicative-0.9.0 (dependency of idris-0.9.13.1) | |
trying: transformers-compat-0.3.3.4 (dependency of optparse-applicative-0.9.0) | |
trying: transformers-compat-0.3.3.4:-three | |
trying: trifecta-1.4.2 (dependency of idris-0.9.13.1) | |
next goal: transformers (dependency of idris-0.9.13.1) | |
rejecting: transformers-0.2.2.0/installed-367... (conflict: | |
transformers-compat-0.3.3.4:three => transformers>=0.4.1 && <0.5) | |
rejecting: transformers-0.4.1.0 (conflict: trifecta => transformers>=0.2 && | |
<0.4) | |
rejecting: transformers-0.3.0.0, 0.2.2.1, 0.2.2.0, 0.2.1.0, 0.2.0.0 (conflict: | |
transformers-compat-0.3.3.4:three => transformers>=0.4.1 && <0.5) | |
rejecting: transformers-0.1.4.0, 0.1.3.0, 0.1.1.0, 0.1.0.1, 0.1.0.0, 0.0.1.0, | |
0.0.0.0 (conflict: optparse-applicative => transformers>=0.2 && <0.5) | |
rejecting: transformers-0.4.0.0 (conflict: transformers-compat-0.3.3.4:three | |
=> transformers>=0.4.1 && <0.5) | |
$ cabal --version | |
cabal-install version 0.14.0 | |
using version 1.14.0 of the Cabal library | |
$ ghc --version | |
The Glorious Glasgow Haskell Compilation System, version 7.4.1 |
Don't know what platform you're building on, but I've - in the end - been successful on OSX. I've cloned the Idris repo here: https://github.com/idris-lang/Idris-dev and then continued building from source as per README. Used MacPorts to grab the recommended libs.
But...maybe the biggest 'trick' of all was using a
$ cabal sandbox init
in the build directory (as the sandbox) before doing the make. (Having had to deal with many a cabal hell situation finally had me wisening up ;-) )
The resulting Idris binary ended up in the Idris-dev/dist/dist-sandbox-4eb47202/build/Idris/idris
subdirectory.
I then linked to it
$ sudo ln -s ~/sources/Idris-dev/dist/dist-sandbox-4eb47202/build/Idris/idris /opt/local/bin/idris
Might be a bit hackish, but since I was only trying to get stuff working I was fine with it.
Just my two cents.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I have a much older (0.1.1.1) transformers-compat. Looks like many new releases of transformers-compat have come out since may. The latest one needs a flag to work with transformers-0.3.* (I have 0.3.0.0).
You can try
cabal install idris -fthree
and see if that works. I can't remember if cabal will pass the build flag all the way down.It's extremely frustrating when new versions of dependencies being release breaks a package installing :/