无法使用 cabal 1.24.0.2/ghc 8.2.1 在 Ubuntu 16.10 上安装 leksah
couldn't install leksah on Ubuntu 16.10 using cabal 1.24.0.2/ghc 8.2.1
我正在尝试使用 cabal 安装 leksah 作为我的开发环境,但我 运行 出错了。
user@home:~$ cabal install leksah
Resolving dependencies...
cabal: Could not resolve dependencies:
trying: leksah-0.15.2.0 (user goal)
next goal: base (dependency of leksah-0.15.2.0)
rejecting: base-4.10.0.0/installed-4.1... (conflict: leksah => base>=4.0.0.0 && <4.9)
rejecting: base-4.10.0.0, base-4.9.1.0, base-4.9.0.0, base-4.8.2.0,
base-4.8.1.0, base-4.8.0.0, base-4.7.0.2, base-4.7.0.1, base-4.7.0.0,
base-4.6.0.1, base-4.6.0.0, base-4.5.1.0, base-4.5.0.0, base-4.4.1.0,
base-4.4.0.0, base-4.3.1.0, base-4.3.0.0, base-4.2.0.2, base-4.2.0.1,
base-4.2.0.0, base-4.1.0.0, base-4.0.0.0, base-3.0.3.2, base-3.0.3.1
(constraint from non-upgradeable package requires installed instance)
Backjump limit reached (currently 2000, change with --max-backjumps or
try to run with --reorder-goals).
关于 haskell 在我的机器上安装的其他细节如下 -
user@home:~$ ghci --version
The Glorious Glasgow Haskell Compilation System, version 8.2.1
user@home:~$ cabal --version
cabal-install version 1.24.0.2
compiled using version 1.24.2.0 of the Cabal library
user@home:~$ stack --version
Version 1.3.2, Git revision 3f675146590da4f3edf768b89355f798229da2a5 (4395 commits) x86_64 hpack-0.15.0
有什么解决这些错误的建议吗?
让我们直接了解依赖关系:
leksah
有版本 0.15.2
,大约 18 个月前发布。它依赖于严格低于 4.9
的 base
包(另见 version bump commit)。
ghc
有版本 8.2.1
。根据 release notes,base
包的版本为 4.10.0.0
.
您不能安装另一个基础包 - 它与 ghc 版本 (). Note that the version of the base package for ghc 8.0.1
(release notes) 的内在联系是4.9.0.0
。
所以要么
- 安装 8 之前的 haskell 版本,并带有较旧的基础包,或者
- 从其 github 源 (install instructions) 安装
leksah
,或
- 与其他贡献者合作,也许可以发布
0.15.1
(或其他)只是升级版本(当然前提是它仍然有效)。
虽然看起来很奇怪 - 最近两周有提交,但是 download 页面提到他们正在计划 0.16
版本 - 这是半年前的事了。
我有点想知道为什么 ghc
的次要版本有上限 - 当前 version requirement 设置为基础 >=4.0.0.0 && <4.11
。因此,当 ghc next
再次碰撞 base
包时,会出现同样的问题。所以 leksah
几乎锁定在 ghc
发布周期。
我正在尝试使用 cabal 安装 leksah 作为我的开发环境,但我 运行 出错了。
user@home:~$ cabal install leksah
Resolving dependencies...
cabal: Could not resolve dependencies:
trying: leksah-0.15.2.0 (user goal)
next goal: base (dependency of leksah-0.15.2.0)
rejecting: base-4.10.0.0/installed-4.1... (conflict: leksah => base>=4.0.0.0 && <4.9)
rejecting: base-4.10.0.0, base-4.9.1.0, base-4.9.0.0, base-4.8.2.0,
base-4.8.1.0, base-4.8.0.0, base-4.7.0.2, base-4.7.0.1, base-4.7.0.0,
base-4.6.0.1, base-4.6.0.0, base-4.5.1.0, base-4.5.0.0, base-4.4.1.0,
base-4.4.0.0, base-4.3.1.0, base-4.3.0.0, base-4.2.0.2, base-4.2.0.1,
base-4.2.0.0, base-4.1.0.0, base-4.0.0.0, base-3.0.3.2, base-3.0.3.1
(constraint from non-upgradeable package requires installed instance)
Backjump limit reached (currently 2000, change with --max-backjumps or
try to run with --reorder-goals).
关于 haskell 在我的机器上安装的其他细节如下 -
user@home:~$ ghci --version
The Glorious Glasgow Haskell Compilation System, version 8.2.1
user@home:~$ cabal --version
cabal-install version 1.24.0.2
compiled using version 1.24.2.0 of the Cabal library
user@home:~$ stack --version
Version 1.3.2, Git revision 3f675146590da4f3edf768b89355f798229da2a5 (4395 commits) x86_64 hpack-0.15.0
有什么解决这些错误的建议吗?
让我们直接了解依赖关系:
leksah
有版本0.15.2
,大约 18 个月前发布。它依赖于严格低于4.9
的base
包(另见 version bump commit)。ghc
有版本8.2.1
。根据 release notes,base
包的版本为4.10.0.0
.
您不能安装另一个基础包 - 它与 ghc 版本 (ghc 8.0.1
(release notes) 的内在联系是4.9.0.0
。
所以要么
- 安装 8 之前的 haskell 版本,并带有较旧的基础包,或者
- 从其 github 源 (install instructions) 安装
leksah
,或 - 与其他贡献者合作,也许可以发布
0.15.1
(或其他)只是升级版本(当然前提是它仍然有效)。
虽然看起来很奇怪 - 最近两周有提交,但是 download 页面提到他们正在计划 0.16
版本 - 这是半年前的事了。
我有点想知道为什么 ghc
的次要版本有上限 - 当前 version requirement 设置为基础 >=4.0.0.0 && <4.11
。因此,当 ghc next
再次碰撞 base
包时,会出现同样的问题。所以 leksah
几乎锁定在 ghc
发布周期。