
<log> F:\Util\Haskell>cabal fetch mtl==2.0.0.0 Resolving dependencies... cabal: internal error: could not construct a valid install plan. The proposed (invalid) plan contained the following problems: The following packages are involved in a dependency cycle transformers-0.2.2.0, special-functors-1.0, mtl-2.0.0.0 F:\Util\Haskell>cabal -V cabal-install version 0.8.2 using version 1.8.0.2 of the Cabal library </log> Could someone please remind me of the correct incantation to make this work. (I observe that transformers-0.1.4.0 optionally (by cabal flag) depends on special-functors, and special-functors-1.0 depends on mtl. So given that mtl-2 no doubt depends on transformers, I can see the potential for confusion, but there presumably must be a way of breaking the (apparent) loop.) TIA, Iain. -- Iain Alexander ia@stryx.demon.co.uk

I installed gtk2hs-buildtools as per the Leksah page, and then tried to install Leksah itself. I got: [root@eiffel download]# cabal install leksah Resolving dependencies... cabal: cannot configure leksah-server-0.8.0.8. It requires ghc>=6.10.1&& <6.13 There is no available version of ghc that satisfies>=6.10.1&& <6.13 But there is... [root@eiffel download]# ghc --version The Glorious Glasgow Haskell Compilation System, version 6.12.3 I don't know whether this is a problem with the GHC installation or the Leksah build. I'm running Fedora 14 with GHC installed through the package manager. Paul.

On 27 November 2010 10:41, Paul Johnson
I installed gtk2hs-buildtools as per the Leksah page, and then tried to install Leksah itself. I got:
[root@eiffel download]# cabal install leksah Resolving dependencies... cabal: cannot configure leksah-server-0.8.0.8. It requires ghc>=6.10.1&& <6.13 There is no available version of ghc that satisfies>=6.10.1&& <6.13
But there is...
[root@eiffel download]# ghc --version The Glorious Glasgow Haskell Compilation System, version 6.12.3
I don't know whether this is a problem with the GHC installation or the Leksah build. I'm running Fedora 14 with GHC installed through the package manager.
Interesting. Perhaps Cabal isn't looking at the same GHC version. If you run cabal install with --version passed to GHC, GHC will just output the version instead of doing any compiling and the install will stop. You can see what version Cabal actually uses. Maybe it's different? chris@cn-done:~$ cabal install codepad --ghc-options=--version Resolving dependencies... Configuring mtl-1.1.1.0... The Glorious Glasgow Haskell Compilation System, version 6.12.3

On 27/11/10 11:25, Christopher Done wrote:
Interesting. Perhaps Cabal isn't looking at the same GHC version. If you run cabal install with --version passed to GHC, GHC will just output the version instead of doing any compiling and the install will stop. You can see what version Cabal actually uses. Maybe it's different?
Cabal is using ghc-6.12.3. However with Leksah it doesn't seem to be getting that far: it seems to be looking for a package called "ghc" during dependency analysis. However when I run "ghc-pkg list" there is no such package. Obviously this is meant to be a package that flags the compiler version for Cabal. Is it a bug that I don't have one? Paul

Hi Paul, ghc is a package, which exposes Ghc-Api as a library. It gets usually installed, when you install Ghc or Haskell platform. As I remeber , it is usually in a hidden state, but ghc-pkg list should show it. Jürgen Paul Johnson-2 wrote:
On 27/11/10 11:25, Christopher Done wrote:
Interesting. Perhaps Cabal isn't looking at the same GHC version. If you run cabal install with --version passed to GHC, GHC will just output the version instead of doing any compiling and the install will stop. You can see what version Cabal actually uses. Maybe it's different?
Cabal is using ghc-6.12.3. However with Leksah it doesn't seem to be getting that far: it seems to be looking for a package called "ghc" during dependency analysis. However when I run "ghc-pkg list" there is no such package. Obviously this is meant to be a package that flags the compiler version for Cabal. Is it a bug that I don't have one?
Paul _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
-- View this message in context: http://haskell.1045720.n5.nabble.com/How-to-cabal-fetch-mtl-2-0-0-0-tp328069... Sent from the Haskell - Haskell-Cafe mailing list archive at Nabble.com.

On 10-11-27 09:20 AM, jutaro wrote:
ghc is a package, which exposes Ghc-Api as a library. It gets usually installed, when you install Ghc or Haskell platform. As I remeber , it is usually in a hidden state, but ghc-pkg list should show it.
Except that Fedora's GHC really doesn't come with the ghc api. It is nowhere to be found in http://rpmfind.net//linux/RPM/fedora/devel/rawhide/i386/ghc-6.12.3-9.fc15.i6... (contains complete file listing) It doesn't seem to be in Fedora's haskell platform (and its dependencies) either.

On Sat, Nov 27, 2010 at 10:58:37AM -0500, Albert Y. C. Lai wrote:
On 10-11-27 09:20 AM, jutaro wrote:
ghc is a package, which exposes Ghc-Api as a library. It gets usually installed, when you install Ghc or Haskell platform. As I remeber , it is usually in a hidden state, but ghc-pkg list should show it.
Except that Fedora's GHC really doesn't come with the ghc api. It is nowhere to be found in http://rpmfind.net//linux/RPM/fedora/devel/rawhide/i386/ghc-6.12.3-9.fc15.i6... (contains complete file listing)
It doesn't seem to be in Fedora's haskell platform (and its dependencies) either.
GHC api may be in the ghc-ghc-{,devel,prof} packages. Have you tried `yum install ghc-ghc-devel` ? FYI I've recently cabal-install'ed leksah on Fedora14. It's not as easy as one could hope (you need to set cabal 'preference' to mtl>=2.0'), but it's possible. regards, /John

"Albert Y. C. Lai"
cabal fetch mtl-2.0.0.0
C:\Documents and Settings\Iain Alexander>cabal fetch mtl-2.0.0.0 Resolving dependencies... cabal: internal error: could not construct a valid install plan. The proposed (invalid) plan contained the following problems: The following packages are involved in a dependency cycle transformers-0.2.2.0, special-functors-1.0, mtl-2.0.0.0 -- Iain Alexander ia@stryx.demon.co.uk

On Thu, Nov 25, 2010 at 2:52 AM, Iain Alexander
<log> F:\Util\Haskell>cabal fetch mtl==2.0.0.0 Resolving dependencies... cabal: internal error: could not construct a valid install plan. The proposed (invalid) plan contained the following problems: The following packages are involved in a dependency cycle transformers-0.2.2.0, special-functors-1.0, mtl-2.0.0.0
F:\Util\Haskell>cabal -V cabal-install version 0.8.2 using version 1.8.0.2 of the Cabal library </log>
Could someone please remind me of the correct incantation to make this work.
(I observe that transformers-0.1.4.0 optionally (by cabal flag) depends on special-functors, and special-functors-1.0 depends on mtl. So given that mtl-2 no doubt depends on transformers, I can see the potential for confusion, but there presumably must be a way of breaking the (apparent) loop.)
TIA, Iain. -- Iain Alexander ia@stryx.demon.co.uk
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Maybe it helps if special-functors gets an upper bound on its mtl dependency: mtl < 2. BTW what is you ghc --version? Because I have no problems fetching mtl-2: $ ghc --version The Glorious Glasgow Haskell Compilation System, version 6.12.1 $ cabal --version cabal-install version 0.8.0 using version 1.8.0.2 of the Cabal library $ cabal fetch mtl==2.0.0.0 Resolving dependencies... Downloading mtl-2.0.0.0... Regards, Bas

On Fri, Nov 26, 2010 at 12:48 AM, Ross Paterson
On Fri, Nov 26, 2010 at 12:24:26AM +0100, Bas van Dijk wrote:
Maybe it helps if special-functors gets an upper bound on its mtl dependency: mtl < 2.
It should have mtl < 1.1.1.0, because that version lacks one of the instances it relies on.
(CCing this to the special-functors maintainer.) Henning, could you add this upper bound to the mtl dependency? Thanks, Bas

Bas van Dijk schrieb:
On Fri, Nov 26, 2010 at 12:48 AM, Ross Paterson
wrote: On Fri, Nov 26, 2010 at 12:24:26AM +0100, Bas van Dijk wrote:
Maybe it helps if special-functors gets an upper bound on its mtl dependency: mtl < 2. It should have mtl < 1.1.1.0, because that version lacks one of the instances it relies on.
(CCing this to the special-functors maintainer.)
Henning, could you add this upper bound to the mtl dependency?
I was never happy with that import cycle ... updated version uploaded to Hackage.

On 25 Nov 2010 at 23:48:27, Ross Paterson wrote:
On Fri, Nov 26, 2010 at 12:24:26AM +0100, Bas van Dijk wrote:
Maybe it helps if special-functors gets an upper bound on its mtl dependency: mtl < 2.
It should have mtl < 1.1.1.0, because that version lacks one of the instances it relies on.
Well, that certainly breaks the dependency loop, but still leaves the overall fetch broken. <log> C:\Source\Haskell\Wrapper>cabal fetch mtl-2.0.0.0 Resolving dependencies... cabal: cannot configure special-functors-1.0.0.1. It requires mtl >=1.0 && <1.1.1 For the dependency on mtl >=1.0 && <1.1.1 there are these packages: mtl-1.0, mtl-1.1.0.0, mtl-1.1.0.1 and mtl-1.1.0.2. However none of them are available. mtl-1.0 was excluded because mtl-2.0.0.0 was selected instead mtl-1.0 was excluded because of the top level dependency mtl ==2.0.0.0 mtl-1.1.0.0 was excluded because mtl-2.0.0.0 was selected instead mtl-1.1.0.0 was excluded because of the top level dependency mtl ==2.0.0.0 mtl-1.1.0.1 was excluded because mtl-2.0.0.0 was selected instead mtl-1.1.0.1 was excluded because of the top level dependency mtl ==2.0.0.0 mtl-1.1.0.2 was excluded because mtl-2.0.0.0 was selected instead mtl-1.1.0.2 was excluded because of the top level dependency mtl ==2.0.0.0 </log> I've tried installing transformers-0.2.2.0, but that doesn't seem to help either. Ah, but running with --verbose=3 shows that it's using the 6.4.1 version of ghc- pkg, which doesn't have transformers-0.2.2.0 installed, and if it did would have the dependency on special-functors. I'm fairly sure I've got a pre-built cabal command-line binary, the 6.12.3 version of ghc-pkg is first on the PATH, and there's nothing relevant in ~/cabal/config (I'm on Windows, but we all know what I mean by that). So where's it getting the 6.4.1 ghc-pkg from? I've tried overriding --with-hc-pkg=..., but it's an unrecognized option. -- Iain Alexander ia@stryx.demon.co.uk

On 2 Dec 2010 at 01:09:18, Iain Alexander wrote:
So where's it getting the 6.4.1 ghc-pkg from?
It turns out that the only PATH-accessible copy of cabal[.exe] was in .../ghc-6.4.1/bin, and it appears that cabal by default uses the versions of ghc and ghc-pkg in the same directory as itself. Any attempt to install mtl-2 with ghc-6.4.1 is understandably doomed to failure, so given cabal-install's mission, I can see why even cabal fetch would fail. The solution was to put a copy of cabal.exe in .../ghc-6.12.3/bin, and then everything went smoothly. -- Iain Alexander ia@stryx.demon.co.uk
participants (9)
-
Albert Y. C. Lai
-
Bas van Dijk
-
Christopher Done
-
Henning Thielemann
-
Iain Alexander
-
John Obbele
-
jutaro
-
Paul Johnson
-
Ross Paterson