21

使用 Cabal 重新安装软件包时,通常会看到以下警告:

警告:请注意,重新安装总是很危险的。还是继续...

此消息背后的一些原因是什么?

4

1 回答 1

16

目前,重新安装一个包意味着破坏性地覆盖一个已经安装的包。如果那个旧包对系统有任何反向依赖,它们将不再工作。

为了降低这种可能性,cabal-install请检查在调用此类反向依赖项时它有权访问的包数据库并列出它们。在这种情况下,它需要--force-reinstalls继续。但即使找不到反向依赖,也不代表没有。系统上的其他地方可能存在其他包数据库(例如,多个用户数据库),或者针对要覆盖的旧版本包配置的项目目录。没有办法cabal-install完全确定,这就是为什么它警告重新安装总是危险的。

于 2013-10-30T21:17:37.473 回答