
On 10/18/2014 01:16 PM, Michael Martin wrote:
On 10/18/2014 02:31 AM, Heinrich Apfelmus wrote:
Michael L Martin wrote:
On 10/16/2014 03:11 PM, Mateusz Kowalczyk wrote:
Merely going from the error message and your steps, it seems to me that you're *not* meant to install GHC yourself first and that the platform ships with GHC. I would say try again but without installing GHC and cabal first.
Well, that didn't work, either:
mmartin@cloud:~/Downloads/haskell-platform-2014.2.0.0$ ./platform.sh .../ghc-7.8.3-x86_64-unknown-linux-deb7.tar.bz2 ../platform.sh: 18: ./platform.sh: cabal: not found *** *** Building hptool *** ../platform.sh: 29: ./platform.sh: cabal: not found mmartin@cloud:~/Downloads/haskell-platform-2014.2.0.0$
Apparently, different distributions of the Haskell Platform differ in what tools they package: the binary distribution includes GHC and cabal, whereas the source distribution, which you are currently trying to install, doesn't include GHC and cabal.
Judging from the error message
Stderr: mtl-2.1.3.1: package(s) with this id already exist: mtl-2.1.3.1
it seems that the platform tries to build the `mtl` package, but fails because it is already installed. You can use the command
$ ghc-pkg list
to see which packages are installed globally and in your home directory. Most likely, `mtl` got installed because you installed `cabal-install`. I have no idea how to deal with the conflict, though, I'm not really familiar with the Haskell platform source distribution.
Best regards, Heinrich Apfelmus
Thanks, Heinrich.
I find it astonishing that build/install fails because it finds that a dependency that it needs is already installed. This is totally unreasonable. I was really looking forward to experimenting with Cloud Haskell, but the pain of installation, coupled with Haskell's well-known issues with "dependency hell", have soured me on Haskell. The language itself is amazing - I really like it. But I'm afraid that the dysfunctional nature of the Haskell ecosystem is driving me back to Erlang/OTP. OTP has proven to be industrial strength. I hope that someday (soon), Haskell will be able to claim that, as well.
Why don't you use [1] instead of getting the source binary and finding yourself struggling? It comes with GHC. [1]: http://www.haskell.org/platform/linux.html#binary -- Mateusz K.