我将项目从cabal new-build转换为堆栈。虽然它适用于大多数机器,但在一台机器上我得到了阴影依赖性问题:
Building library for PSS-0.2.0.0..
<command line>: cannot satisfy -package-id conduit-extra-1.3.0-
IqE5lCHhGFAGyZP27mhAWv:
conduit-extra-1.3.0-IqE5lCHhGFAGyZP27mhAWv is unusable due to
shadowed dependencies:
streaming-commons-0.1.19-2BxOAPRD0RODtVLE2OYQW2
(use -v for more information)
据我所知,这个问题应该已经在堆栈中修复了,但是在这一次安装中它仍然会发生。
堆栈版本:
Version 1.6.5, Git revision 24ab0d6ff07f28276e082c3ce74dfdeb1a2ca9e9
(5514 commits) x86_64 hpack-0.20.0
Cabal安装了堆栈本身,版本:
> which cabal
/home/oswald/.local/bin/cabal
> cabal --version
cabal-install version 2.0.0.1
compiled using version 2.0.1.1 of the Cabal library
它使用系统安装的ghc(ghc 8.2.2)和lts-11.4。它适用于openSuSE LEAP 42.3,有趣的是它在SLES 11上效果最好(这是非常古老的,但我遇到的问题最少。必须在那里手动编译GHC)。发生这种情况的系统是Ubuntu Studio 14.04。其他系统使用相同的堆栈和cabal版本,没有任何问题。
有没有人知道这里发生了什么?
答案 0 :(得分:0)
我认为这是一个ghc 8.2+问题,因此您可能暂时停留在8.0.2以避免它。 (我认为Fedora 28和NixOS都有补丁。)
有关详细信息,请参阅https://github.com/haskell/cabal/issues/4728。