我尝试安装haskell软件包ssh-0.2.12
sudo cabal install ssh-0.2.12
但是
src/SSH.hs:58:114: Not in scope: type constructor or class `SHA1'
src/SSH.hs:59:115: Not in scope: type constructor or class `MD5'
Failed to install ssh-0.2.12
cabal: Error: some packages failed to install:
ssh-0.2.12 failed during the building phase. The exception was:
我在Ubuntu 13.04上。
答案 0 :(得分:2)
这是因为ssh
仅依赖于cryptohash
而没有绑定的uppper版本。
它可能是针对cryptohash 0.9.1编写的,其中MD5
构造函数existed and where it is marked as deprecated,但现在cryptohash 0.10.0已经出doesn't contain了。
如果没有限制,您的cabal将安装最新版本的依赖项。
正确的做法是针对ssh
包提交错误,以便更新。您可以找到错误跟踪网址on its hackage page。
注意:上限版本的好坏都是controversial。