阴谋(依赖)地狱背后的原因是什么?

Mas*_*tic 8 haskell cabal

如何在Cabal-install中发生依赖?

我在Cabal/Survival上阅读了以下内容- HaskellWiki:

1. Cabal-install造成的困难是什么?

Cabal的主要困难还被称为"依赖性地狱",其中cabal-install无法出于某种原因安装所需的包,从而导致大量的手动工作.作为这种困难的一个例子,考虑用户希望安装包A和B的情况.这两种方法都适用于包C,但不适用于相同版本的C.

我理解为什么这一般有意义,但不适用于Cabal-install/ghc-pkg,因为您可以安装相同软件包的多个版本.
就好像每个版本都是一个完全不同的软件包一样,在很多方面,版本如何成为软件包名称的一部分(例如mustaches-0.1.0.0) - 也许它真的是ghc-pkg(我对它不是很熟悉,但它会有意义).

Don*_*art 12

你有这样的场景:

在此输入图像描述

B和C都依赖于A.但是,如果它们是在不同时间安装的,它们可能依赖于不同版本的A.例如,A版本1导出type T = Int,但在版本2中导出type T = Bool.

只有当你试图建立d你揭露B和C组建立针对不同版本的问题,你不能比较T version 1反对T version 2.