2015-03-31 43 views
2

试图安装criterion,我遇到了其他需要重新安装的软件包的麻烦。重新安装它们会破坏一切(我试过)。我如何知道谁应该谴责瑕疵不一致

$ cabal install criterion 
Resolving dependencies... 
In order, the following would be installed: 
Glob-0.7.5 (new package) 
abstract-deque-0.3 (new package) 
abstract-par-0.3.3 (new package) 
blaze-builder-0.4.0.1 (new package) 
cereal-0.4.1.1 (new package) 
erf-2.0.0.0 (new package) 
ieee754-0.7.6 (new package) 
hastache-0.6.1 (new package) 
monad-par-extras-0.3.3 (new package) 
parallel-3.2.0.6 (new package) 
primitive-0.5.4.0 (latest: 0.6) (new version) 
vector-0.10.12.3 (reinstall) changes: primitive-0.6 -> 0.5.4.0 
aeson-0.8.0.2 +old-locale (reinstall) changes: mtl-2.1.3.1 -> 2.2.1 
cassava-0.4.2.2 (new package) 
mwc-random-0.13.3.2 (new package) 
monad-par-0.3.4.7 (new package) 
vector-algorithms-0.6.0.3 (new package) 
vector-binary-instances-0.2.1.0 (new package) 
vector-th-unbox-0.2.1.2 (new package) 
math-functions-0.1.5.2 (new package) 
statistics-0.13.2.3 (new package) 
criterion-1.1.0.0 (new package) 
cabal: The following packages are likely to be broken by the reinstalls: 
yaml-0.8.10.1 
stylish-haskell-0.5.11.2 
hashtables-1.2.0.2 
haskell-docs-4.2.5 
Use --force-reinstalls if you want to install anyway. 

现在,如何才能知道是否责怪criterion这个(使用太旧的依赖关系)或其他包(对于没有足够的更新)?

+3

大多数时候,你能怪https://wiki.haskell.org/Package_versioning_policy – 2015-03-31 15:15:43

回答

5

都没有。这就是它的工作原理。使用库版本作为依赖项构建的包可能会非常快速地不兼容。可能的组合数量太多了。

你有两个选择,基本上是: