2013-01-09 41 views
5

我发现--avoid-reinstalls使包建立在否则cabal失败。它到底在做什么?不cabal已经尝试避免重新安装,或不应该?cabal安装到底是什么 - 避免重新安装?

+0

应该是默认情况下的行为,您可以通过force-reinstalls标志对其进行修改 – zurgl

+0

即使对于默认设置,它也具有标志,它们可能主要针对的是希望在未来更改默认值的外部工具。 –

+0

@zurgl正如我所说的,添加标志会导致成功构建cabal失败的地方,所以我不认为它是默认行为。还是你说它*应该*是默认的,但不是? – jberryman

回答

1

这个邮件列表后解释了它相当不错:http://www.haskell.org/pipermail/beginners/2011-June/007502.html

依赖解析算法将努力使一致 安装计划,允许运行gitit。但是,为了实现 ,它可能会决定需要在新配置中重新安装某些现有的 程序包(使用其他依赖项或标志 设置)。然后这样的重新安装将覆盖 商店中的前一个包,如果该先前的包依赖于其他东西 ,则这些其他事情将会中断。

--avoid-reinstalls标志可以防止这种行为。