Hi, on another machine that I have a non haskell-package install ie. just 7.4.1 and cabal-install I get a package conflict when attempting to build and install the above. Versions buildwrapper-0.5.2 scion-browser-0.2.8
Would you expect it to ? And what does this do to your build env when attempting to do something with a package that conflicts ? i.e. should I expect the running of eclipsefp to be independent of what i'm trying to work on ? Or will you be restricted to an env that can build the two libraries above ?
Thanks
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Well, you don't say what's conflicting, how can I help you? The released version of this software have been tested on 7.4.1. It's possible to have several versions of the same package anyway, so even if you require for own work a different version of a package required by these tools, you should be fine.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Sorry was more of a general question. Something todo with mtl and versions of it from 2.0.1.0 and 2.1.1 being used bt persistent.
Ghc did appear to have both libs installed but when trying to cabal install buildwrapper / scion-browser it complained it would need a force install of the other version and break the other lib
Guess I need to find some more info on cabal and how it works. Was assuming that you could only have one version of a lib installed.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
persistent is often difficult to install, that's true. If you're just starting from scratch don'b be afraid to try several things, and sometimes install problematic libraries on their own, ie install persistent first, then try to install buildwrapper and scion-browser. BuildWrapper doesn't use persistent though. Use also "ghc-pkg check" to find out if you already have broken packages, fix them before you attempt to install other things, otherwise you'll go crazy. Trust me, I've been there.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Resolving dependencies…
In order, the following will be installed:
mtl-2.1.1 (new version)
aeson-0.6.0.2 (reinstall) changes: mtl-2.0.1.0 -> 2.1.1
parsec-3.1.2 (reinstall) changes: mtl-2.0.1.0 -> 2.1.1
regex-base-0.93.2 (reinstall) changes: mtl-2.0.1.0 -> 2.1.1
regex-tdfa-1.1.8 (reinstall) changes: mtl-2.0.1.0 -> 2.1.1
buildwrapper-0.5.2 (new package)
Which will later conflict with scion-browser ( through some dependency )
but I havet mtl-2.0.1.0 insttalled and from looking in hackage on those packages i dont see any constraint to use 2.1.1 and ideas why cabal / ghc is forcing this to use a newer version ?
Thanks
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
no, on my machine I have mtl-2.0.1.0 and of course everything install fine. But mtl 2.1 has been released recently, in April, so maybe there is a problem but you're the first to reinstall with mtl 2.1. I'll try later tonight. Maybe you can try to add a dependency in buildwrapper, something like mtl<2.1, so than it doesn't try to update, or change scion-browser so that it accepts 2.1.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Actually, I see that scion-browser requires mtl>=2, so we should be fine. What dependency is causing the trouble? Sometimes if a package causes an issue you can try to install it separately, then install the rest. Is there a package in the scion-browser dependencies that seem to require mtl-2.0?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I think it will use already installed dependencies if they match and will not try to update everything you already have. But it always take one package to express the newer dependency… Sometimes cabal is a dark art…
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I don't suppose there are any tools or way of running cabal todo a dependency graph of a proposed install without it actually performing the install ??
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
$ cabal install -dry-run -global buildwrapper
Resolving dependencies…
In order, the following would be installed:
mtl-2.1.1 (new version)
aeson-0.6.0.2 (reinstall) changes: mtl-2.0.1.0 -> 2.1.1
parsec-3.1.2 (reinstall) changes: mtl-2.0.1.0 -> 2.1.1
regex-base-0.93.2 (reinstall) changes: mtl-2.0.1.0 -> 2.1.1
regex-tdfa-1.1.8 (reinstall) changes: mtl-2.0.1.0 -> 2.1.1
buildwrapper-0.5.2 (new package)
Given the deps are already installed against mtl-2.0.1.0 and i'm only trying to install one new package ie. buildwrapper which doesn't require a specific version of mtl it's odd that cabal wants to install a new one !
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
No problem. I see you posted on Haskell-cafe, I think you should reply to yourself and let the list know what the problem was and how to solve it, so others can learn from your sufferings…
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi, on another machine that I have a non haskell-package install ie. just 7.4.1 and cabal-install I get a package conflict when attempting to build and install the above. Versions buildwrapper-0.5.2 scion-browser-0.2.8
Would you expect it to ? And what does this do to your build env when attempting to do something with a package that conflicts ? i.e. should I expect the running of eclipsefp to be independent of what i'm trying to work on ? Or will you be restricted to an env that can build the two libraries above ?
Thanks
Well, you don't say what's conflicting, how can I help you? The released version of this software have been tested on 7.4.1. It's possible to have several versions of the same package anyway, so even if you require for own work a different version of a package required by these tools, you should be fine.
Sorry was more of a general question. Something todo with mtl and versions of it from 2.0.1.0 and 2.1.1 being used bt persistent.
Ghc did appear to have both libs installed but when trying to cabal install buildwrapper / scion-browser it complained it would need a force install of the other version and break the other lib
Guess I need to find some more info on cabal and how it works. Was assuming that you could only have one version of a lib installed.
persistent is often difficult to install, that's true. If you're just starting from scratch don'b be afraid to try several things, and sometimes install problematic libraries on their own, ie install persistent first, then try to install buildwrapper and scion-browser. BuildWrapper doesn't use persistent though. Use also "ghc-pkg check" to find out if you already have broken packages, fix them before you attempt to install other things, otherwise you'll go crazy. Trust me, I've been there.
Thanks for the advice. Will give it a go.
Ok as more concrete.
Trying to build buildwrapper and get
Resolving dependencies…
In order, the following will be installed:
mtl-2.1.1 (new version)
aeson-0.6.0.2 (reinstall) changes: mtl-2.0.1.0 -> 2.1.1
parsec-3.1.2 (reinstall) changes: mtl-2.0.1.0 -> 2.1.1
regex-base-0.93.2 (reinstall) changes: mtl-2.0.1.0 -> 2.1.1
regex-tdfa-1.1.8 (reinstall) changes: mtl-2.0.1.0 -> 2.1.1
buildwrapper-0.5.2 (new package)
Which will later conflict with scion-browser ( through some dependency )
but I havet mtl-2.0.1.0 insttalled and from looking in hackage on those packages i dont see any constraint to use 2.1.1 and ideas why cabal / ghc is forcing this to use a newer version ?
Thanks
no, on my machine I have mtl-2.0.1.0 and of course everything install fine. But mtl 2.1 has been released recently, in April, so maybe there is a problem but you're the first to reinstall with mtl 2.1. I'll try later tonight. Maybe you can try to add a dependency in buildwrapper, something like mtl<2.1, so than it doesn't try to update, or change scion-browser so that it accepts 2.1.
Actually, I see that scion-browser requires mtl>=2, so we should be fine. What dependency is causing the trouble? Sometimes if a package causes an issue you can try to install it separately, then install the rest. Is there a package in the scion-browser dependencies that seem to require mtl-2.0?
Will build and find out. So cabal will choose a newer version of a package to use if released regardless ???
Or if it finds a matching dependency already installed it will use that ?
I think it will use already installed dependencies if they match and will not try to update everything you already have. But it always take one package to express the newer dependency… Sometimes cabal is a dark art…
Yeah i'm starting to get that feeling :)
I don't suppose there are any tools or way of running cabal todo a dependency graph of a proposed install without it actually performing the install ??
http://www.haskell.org/haskellwiki/Cabal-Install: cabal install foo -dry-run Don't know if it's only a more recent version of yours.
Thanks, is an odd one. Have
$ cabal install -dry-run -global buildwrapper
Resolving dependencies…
In order, the following would be installed:
mtl-2.1.1 (new version)
aeson-0.6.0.2 (reinstall) changes: mtl-2.0.1.0 -> 2.1.1
parsec-3.1.2 (reinstall) changes: mtl-2.0.1.0 -> 2.1.1
regex-base-0.93.2 (reinstall) changes: mtl-2.0.1.0 -> 2.1.1
regex-tdfa-1.1.8 (reinstall) changes: mtl-2.0.1.0 -> 2.1.1
buildwrapper-0.5.2 (new package)
Given the deps are already installed against mtl-2.0.1.0 and i'm only trying to install one new package ie. buildwrapper which doesn't require a specific version of mtl it's odd that cabal wants to install a new one !
what's the output with the verbose flag on?
Ah ah, thanks lts of useful info
$ cabal install -dry-run -verbose=3 -global buildwrapper
searching for ghc in path.
found ghc at /usr/local/bin/ghc
("/usr/local/bin/ghc",)
/usr/local/bin/ghc is version 7.4.1
looking for tool "ghc-pkg" near compiler in /usr/local/bin
found ghc-pkg in /usr/local/bin/ghc-pkg
("/usr/local/bin/ghc-pkg",)
/usr/local/bin/ghc-pkg is version 7.4.1
("/usr/local/bin/ghc",)
("/usr/local/bin/ghc",)
Reading installed packages…
("/usr/local/bin/ghc-pkg",)
("/usr/local/bin/ghc",)
Reading available packages…
Choosing modular solver.
Resolving dependencies…
trying: buildwrapper-0.5.2 (user goal)
next goal: base (dependency of buildwrapper-0.5.2)
rejecting: base-3.0.3.2, 3.0.3.1 (global constraint requires installed instance)
trying: base-4.5.0.0/installed-7af…
trying: rts-1.0/installedbuil… (dependency of base-4.5.0.0/installed-7af…)
trying: integer-gmp-0.4.0.0/installed-3cc… (dependency of base-4.5.0.0/installed-7af…)
trying: ghc-prim-0.2.0.0/installed-c2f… (dependency of base-4.5.0.0/installed-7af…)
trying: buildwrapper-0.5.2:!test
trying: cmdargs-0.9.5/installed-7e6… (dependency of buildwrapper-0.5.2)
trying: template-haskell-2.7.0.0/installed-c77… (dependency of cmdargs-0.9.5/installed-7e6…)
trying: pretty-1.1.1.0/installed-74e… (dependency of template-haskell-2.7.0.0/installed-c77…)
trying: transformers-0.3.0.0/installed-b55… (dependency of buildwrapper-0.5.2)
trying: attoparsec-0.10.1.1/installed-54f… (dependency of buildwrapper-0.5.2)
trying: deepseq-1.3.0.0/installed-a73… (dependency of attoparsec-0.10.1.1/installed-54f…)
trying: array-0.4.0.0/installed-59d… (dependency of attoparsec-0.10.1.1/installed-54f…)
trying: bytestring-0.9.2.1/installed-d48… (dependency of buildwrapper-0.5.2)
trying: utf8-string-0.3.7/installed-b3a… (dependency of buildwrapper-0.5.2)
trying: unordered-containers-0.2.1.0/installed-6c8… (dependency of buildwrapper-0.5.2)
trying: hashable-1.1.2.3/installed-1b1… (dependency of unordered-containers-0.2.1.0/installed-6c8…)
trying: aeson-0.6.0.2/installed-f9a… (dependency of buildwrapper-0.5.2)
trying: time-1.4/installed-96b… (dependency of aeson-0.6.0.2/installed-f9a…)
trying: old-locale-1.0.0.4/installed-a2c… (dependency of aeson-0.6.0.2/installed-f9a…)
trying: dlist-0.5/installed-727… (dependency of aeson-0.6.0.2/installed-f9a…)
trying: blaze-builder-0.3.1.0/installed-4b4… (dependency of aeson-0.6.0.2/installed-f9a…)
trying: old-time-1.1.0.0/installed-b77… (dependency of buildwrapper-0.5.2)
trying: cpphs-1.13.3/installed-188… (dependency of buildwrapper-0.5.2)
trying: haskell-src-exts-1.13.2/installed-842… (dependency of buildwrapper-0.5.2)
trying: vector-0.9.1/installed-04d… (dependency of buildwrapper-0.5.2)
trying: primitive-0.4.1/installed-505… (dependency of vector-0.9.1/installed-04d…)
trying: containers-0.4.2.1/installed-cfc… (dependency of buildwrapper-0.5.2)
trying: text-0.11.2.0/installed-c7d… (dependency of buildwrapper-0.5.2)
trying: ghc-syb-utils-0.2.1.0/installed-fca… (dependency of buildwrapper-0.5.2)
trying: syb-0.3.6.1/installed-25a… (dependency of buildwrapper-0.5.2)
trying: ghc-paths-0.1.0.8/installed-a32… (dependency of buildwrapper-0.5.2)
trying: ghc-7.4.1/installed-75d… (dependency of buildwrapper-0.5.2)
trying: unix-2.5.1.0/installed-c9e… (dependency of ghc-7.4.1/installed-75d…)
trying: hpc-0.5.1.1/installed-eb6… (dependency of ghc-7.4.1/installed-75d…)
trying: hoopl-3.8.7.3/installed-be1… (dependency of ghc-7.4.1/installed-75d…)
trying: bin-package-db-0.0.0.0/installed-af0… (dependency of ghc-7.4.1/installed-75d…)
trying: binary-0.5.1.0/installed-5e3… (dependency of bin-package-db-0.0.0.0/installed-af0…)
trying: regex-tdfa-1.1.8/installed-d1d… (dependency of buildwrapper-0.5.2)
trying: regex-base-0.93.2/installed-999… (dependency of regex-tdfa-1.1.8/installed-d1d…)
trying: parsec-3.1.2/installed-dd1… (dependency of regex-tdfa-1.1.8/installed-d1d…)
trying: process-1.1.0.1/installed-dd8… (dependency of buildwrapper-0.5.2)
trying: Cabal-1.14.0/installed-c6d… (dependency of buildwrapper-0.5.2)
trying: directory-1.1.0.2/installed-5ce… (dependency of buildwrapper-0.5.2)
next goal: mtl (dependency of buildwrapper-0.5.2)
rejecting: mtl-2.0.1.0/installed-db1… (conflict: cmdargs => transformers==0.3.0.0/installed-b55…, mtl => transformers==0.2.2.0/installed-367…)
rejecting: mtl-2.1.1, 2.1, 2.0.1.0, 2.0.0.0, 1.1.1.1, 1.1.1.0, 1.1.0.2, 1.1.0.1, 1.1.0.0, 1.0 (conflict: aeson => mtl==2.0.1.0/installed-db1…)
fail (backjumping, conflict set: aeson, buildwrapper, cmdargs, mtl)
trying: aeson-0.6.0.2
trying: aeson-0.6.0.2:-developer
trying: aeson-0.6.0.2:!test
trying: dlist-0.5/installed-727… (dependency of aeson-0.6.0.2)
trying: time-1.4/installed-96b… (dependency of aeson-0.6.0.2)
trying: old-locale-1.0.0.4/installed-a2c… (dependency of aeson-0.6.0.2)
trying: blaze-builder-0.3.1.0/installed-4b4… (dependency of aeson-0.6.0.2)
trying: old-time-1.1.0.0/installed-b77… (dependency of buildwrapper-0.5.2)
trying: cpphs-1.13.3/installed-188… (dependency of buildwrapper-0.5.2)
trying: haskell-src-exts-1.13.2/installed-842… (dependency of buildwrapper-0.5.2)
trying: vector-0.9.1/installed-04d… (dependency of buildwrapper-0.5.2)
trying: primitive-0.4.1/installed-505… (dependency of vector-0.9.1/installed-04d…)
trying: containers-0.4.2.1/installed-cfc… (dependency of buildwrapper-0.5.2)
trying: text-0.11.2.0/installed-c7d… (dependency of buildwrapper-0.5.2)
trying: ghc-syb-utils-0.2.1.0/installed-fca… (dependency of buildwrapper-0.5.2)
trying: syb-0.3.6.1/installed-25a… (dependency of buildwrapper-0.5.2)
trying: ghc-paths-0.1.0.8/installed-a32… (dependency of buildwrapper-0.5.2)
trying: ghc-7.4.1/installed-75d… (dependency of buildwrapper-0.5.2)
trying: unix-2.5.1.0/installed-c9e… (dependency of ghc-7.4.1/installed-75d…)
trying: hpc-0.5.1.1/installed-eb6… (dependency of ghc-7.4.1/installed-75d…)
trying: hoopl-3.8.7.3/installed-be1… (dependency of ghc-7.4.1/installed-75d…)
trying: bin-package-db-0.0.0.0/installed-af0… (dependency of ghc-7.4.1/installed-75d…)
trying: binary-0.5.1.0/installed-5e3… (dependency of bin-package-db-0.0.0.0/installed-af0…)
trying: regex-tdfa-1.1.8/installed-d1d… (dependency of buildwrapper-0.5.2)
trying: regex-base-0.93.2/installed-999… (dependency of regex-tdfa-1.1.8/installed-d1d…)
trying: parsec-3.1.2/installed-dd1… (dependency of regex-tdfa-1.1.8/installed-d1d…)
trying: process-1.1.0.1/installed-dd8… (dependency of buildwrapper-0.5.2)
trying: Cabal-1.14.0/installed-c6d… (dependency of buildwrapper-0.5.2)
trying: directory-1.1.0.2/installed-5ce… (dependency of buildwrapper-0.5.2)
next goal: mtl (dependency of buildwrapper-0.5.2)
rejecting: mtl-2.0.1.0/installed-db1… (conflict: cmdargs => transformers==0.3.0.0/installed-b55…, mtl => transformers==0.2.2.0/installed-367…)
rejecting: mtl-2.1.1, 2.1, 2.0.1.0, 2.0.0.0, 1.1.1.1, 1.1.1.0, 1.1.0.2, 1.1.0.1, 1.1.0.0, 1.0 (conflict: regex-tdfa => mtl==2.0.1.0/installed-db1…)
fail (backjumping, conflict set: buildwrapper, cmdargs, mtl, regex-tdfa)
trying: regex-tdfa-1.1.8
trying: regex-tdfa-1.1.8:+base4
trying: parsec-3.1.2/installed-dd1… (dependency of regex-tdfa-1.1.8)
trying: regex-base-0.93.2/installed-999… (dependency of regex-tdfa-1.1.8)
trying: process-1.1.0.1/installed-dd8… (dependency of buildwrapper-0.5.2)
trying: Cabal-1.14.0/installed-c6d… (dependency of buildwrapper-0.5.2)
trying: directory-1.1.0.2/installed-5ce… (dependency of buildwrapper-0.5.2)
next goal: mtl (dependency of buildwrapper-0.5.2)
rejecting: mtl-2.0.1.0/installed-db1… (conflict: cmdargs => transformers==0.3.0.0/installed-b55…, mtl => transformers==0.2.2.0/installed-367…)
rejecting: mtl-2.1.1, 2.1, 2.0.1.0, 2.0.0.0, 1.1.1.1, 1.1.1.0, 1.1.0.2, 1.1.0.1, 1.1.0.0, 1.0 (conflict: parsec => mtl==2.0.1.0/installed-db1…)
fail (backjumping, conflict set: buildwrapper, cmdargs, mtl, parsec, regex-tdfa)
trying: parsec-3.1.1/installed-69c…
trying: regex-base-0.93.2/installed-999… (dependency of regex-tdfa-1.1.8)
trying: process-1.1.0.1/installed-dd8… (dependency of buildwrapper-0.5.2)
trying: Cabal-1.14.0/installed-c6d… (dependency of buildwrapper-0.5.2)
trying: directory-1.1.0.2/installed-5ce… (dependency of buildwrapper-0.5.2)
next goal: mtl (dependency of buildwrapper-0.5.2)
rejecting: mtl-2.0.1.0/installed-db1… (conflict: cmdargs => transformers==0.3.0.0/installed-b55…, mtl => transformers==0.2.2.0/installed-367…)
rejecting: mtl-2.1.1, 2.1, 2.0.1.0, 2.0.0.0, 1.1.1.1, 1.1.1.0, 1.1.0.2, 1.1.0.1, 1.1.0.0, 1.0 (conflict: parsec => mtl==2.0.1.0/installed-db1…)
fail (backjumping, conflict set: buildwrapper, cmdargs, mtl, parsec, regex-tdfa)
trying: parsec-3.1.2
trying: parsec-3.1.2:+base4
trying: regex-base-0.93.2/installed-999… (dependency of regex-tdfa-1.1.8)
trying: process-1.1.0.1/installed-dd8… (dependency of buildwrapper-0.5.2)
trying: Cabal-1.14.0/installed-c6d… (dependency of buildwrapper-0.5.2)
trying: directory-1.1.0.2/installed-5ce… (dependency of buildwrapper-0.5.2)
next goal: mtl (dependency of buildwrapper-0.5.2)
rejecting: mtl-2.0.1.0/installed-db1… (conflict: cmdargs => transformers==0.3.0.0/installed-b55…, mtl => transformers==0.2.2.0/installed-367…)
rejecting: mtl-2.1.1, 2.1, 2.0.1.0, 2.0.0.0, 1.1.1.1, 1.1.1.0, 1.1.0.2, 1.1.0.1, 1.1.0.0, 1.0 (conflict: regex-base => mtl==2.0.1.0/installed-db1…)
fail (backjumping, conflict set: buildwrapper, cmdargs, mtl, regex-base, regex-tdfa)
trying: regex-base-0.93.2
trying: regex-base-0.93.2:+splitbase
trying: regex-base-0.93.2:+newbase
trying: process-1.1.0.1/installed-dd8… (dependency of buildwrapper-0.5.2)
trying: Cabal-1.14.0/installed-c6d… (dependency of buildwrapper-0.5.2)
trying: directory-1.1.0.2/installed-5ce… (dependency of buildwrapper-0.5.2)
next goal: mtl (dependency of buildwrapper-0.5.2)
rejecting: mtl-2.0.1.0/installed-db1… (conflict: cmdargs => transformers==0.3.0.0/installed-b55…, mtl => transformers==0.2.2.0/installed-367…)
trying: mtl-2.1.1
next goal: filepath (dependency of buildwrapper-0.5.2)
trying: filepath-1.3.0.0/installed-973…
done
In order, the following would be installed:
mtl-2.1.1 (new version)
aeson-0.6.0.2 (reinstall) changes: mtl-2.0.1.0 -> 2.1.1
parsec-3.1.2 (reinstall) changes: mtl-2.0.1.0 -> 2.1.1
regex-base-0.93.2 (reinstall) changes: mtl-2.0.1.0 -> 2.1.1
regex-tdfa-1.1.8 (reinstall) changes: mtl-2.0.1.0 -> 2.1.1
buildwrapper-0.5.2 (new package)
Something about transformers and cmdargs. Maybe you need to upgrade them too, or check with what version of mtl they've been built on your machine.
Yeah removed transformers & reinstalled cmdargs and all installing fine now including scion-browser
Thanks very much for your help ! I appreciate it !
No problem. I see you posted on Haskell-cafe, I think you should reply to yourself and let the list know what the problem was and how to solve it, so others can learn from your sufferings…