堆栈阴影依赖项

时间:2018-04-17 13:11:40

标签: haskell-stack

我将项目从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版本,没有任何问题。

有没有人知道这里发生了什么?

1 个答案:

答案 0 :(得分:0)

我认为这是一个ghc 8.2+问题,因此您可能暂时停留在8.0.2以避免它。 (我认为Fedora 28和NixOS都有补丁。)

有关详细信息,请参阅https://github.com/haskell/cabal/issues/4728