Menu

Building scion-browser & buildwrapper

Help
2012-05-07
2014-12-31
  • Graham Berks

    Graham Berks - 2012-05-07

    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

     
  • JP Moresmau

    JP Moresmau - 2012-05-07

    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.

     
  • Graham Berks

    Graham Berks - 2012-05-07

    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.

     
  • JP Moresmau

    JP Moresmau - 2012-05-07

    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.

     
  • Graham Berks

    Graham Berks - 2012-05-07

    Thanks for the advice. Will give it a go.

     
  • Graham Berks

    Graham Berks - 2012-05-09

    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

     
  • JP Moresmau

    JP Moresmau - 2012-05-09

    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.

     
  • JP Moresmau

    JP Moresmau - 2012-05-09

    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?

     
  • Graham Berks

    Graham Berks - 2012-05-09

    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 ?

     
  • JP Moresmau

    JP Moresmau - 2012-05-09

    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…

     
  • Graham Berks

    Graham Berks - 2012-05-09

    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 ??

     
  • JP Moresmau

    JP Moresmau - 2012-05-09

    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.

     
  • Graham Berks

    Graham Berks - 2012-05-09

    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 !

     
  • JP Moresmau

    JP Moresmau - 2012-05-09

    what's the output with the verbose flag on?

     
  • Graham Berks

    Graham Berks - 2012-05-09

    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)

     
  • JP Moresmau

    JP Moresmau - 2012-05-09

    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.

     
  • Graham Berks

    Graham Berks - 2012-05-09

    Yeah removed transformers & reinstalled cmdargs and all installing fine now including scion-browser

    Thanks very much for your help ! I appreciate it !

     
  • JP Moresmau

    JP Moresmau - 2012-05-09

    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…

     
  • aadicavi

    aadicavi - 2014-12-31
    Post awaiting moderation.

Log in to post a comment.