
Okay, so the problem is with cabal-install.
I'd don't verily need ghc 7.2, I think I'll just stick to 7.0.4 unti
cabal-install is updated, it will be simpler.
2011/10/24 Daniel Fischer
On Monday 24 October 2011, 23:13:32, Yves Parès wrote:
I'm using GHC 7.2.1 and cabal-install 0.8 (Cabal 1.8.0.2), and when "cabal install rsa"
Apparently it's an instance being declared twice. However RSA hackage page states that it compiles under GHC 7.2: http://hackage.haskell.org/package/RSA
The instance in the rsa package is guarded by a Cabal MIN_VERSION macro:
#if !MIN_VERSION_random(1,0,1) instance Random Word8 where randomR (a,b) g = let aI::Int = fromIntegral a bI::Int = fromIntegral b (x, g') = randomR (aI, bI) g in (fromIntegral x, g') random = randomR (minBound, maxBound) #endif
Unfortunately, that macro was broken in some Cabal versions, among them 1.8.0.2, so the negated check goes wrong (#if !(MIN_...) would work). [As a quickfix for this package, you could edit the source, but you'll probably come across more macro problems later.]
Build yourself a new cabal-install. If you use 7.2.1 for that, the recipe at https://gist.github.com/1169332 tells you what you have to change. If you have an older ghc still available, the vanilla procedure should work with that (if you're using the old 6.12.* with the Cabal-1.8.0.2, first install a later Cabal version, 1.8.0.6 works).