cabal-install"无法读取cabal文件......"

时间:2013-04-14 23:01:36

标签: cabal package-managers cabal-install

我刚刚通过apt-get在Linux Mint 12上安装了新的haskell平台。每次我尝试使用cabal-install安装一些hackage包时,我得到一个:

couldn't read caba file xxxx.cabal

其中xxxx是我正在安装的软件包或软件包本身的依赖项。基于this thread on haskell cafe和SO中的其他问题,我从索引中删除了bytestring包:

tar -f ~/.cabal/packages/hackage.haskell.org/00-index.tar --delete bytestring/0.9.2.0
tar -f ~/.cabal/packages/hackage.haskell.org/00-index.tar --delete bytestring/0.9.2.1

但错误仍然存​​在。

我的cabal-install版本是:

 $ cabal --version
 cabal-install version 0.10.2
 using version 1.10.1.0 of the Cabal library 

错误是这样的:

$ cabal install yesod
Resolving dependencies...
cabal: Couldn't read cabal file "fsnotify/0.0.5/fsnotify.cabal"

有谁知道可能会发生什么?

2 个答案:

答案 0 :(得分:6)

我遇到了同样的问题。在http://haskell.1045720.n5.nabble.com/Cabal-install-fails-due-to-recent-HUnit-td5715081i20.html

有关于此问题的相关邮件列表主题

我认为结果是包文件的格式已经改变,这里使用的cabal版本(我有相同的版本,从ubuntu oneiric获得)无法理解文件。你甚至不能做“cabal install cabal-install”。

邮件列表线程在2012年9月没有做出明确的决定,但我认为他们决定忽略这个问题。对于像我们这样的用户,没有明确的说明。我认为唯一可行的方法是从头开始安装haskell,但我还不知道从哪里开始。

编辑:我通过从http://hackage.haskell.org/packages/archive/cabal-install/1.16.0.2/cabal-install-1.16.0.2.tar.gz下载最新的cabal源包来解决这个问题,解压缩并按照README中的说明进行本地安装。

答案 1 :(得分:0)

我遇到了同样的问题而且我无法按照理查德的说法进行操作,因此我意识到我正在运行7.0版本。?,我使用命令$ uninstall-hs卸载它,然后安装了最新版本( 7.6.3)。问题解决了。