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

Raf*_*ini 2 package-managers cabal cabal-install

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

couldn't read caba file xxxx.cabal
Run Code Online (Sandbox Code Playgroud)

其中xxxx是我正在安装的软件包或软件包本身的依赖项.基于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
Run Code Online (Sandbox Code Playgroud)

但错误仍然存​​在.

我的cabal安装版本是:

 $ cabal --version
 cabal-install version 0.10.2
 using version 1.10.1.0 of the Cabal library 
Run Code Online (Sandbox Code Playgroud)

错误是这样的:

$ cabal install yesod
Resolving dependencies...
cabal: Couldn't read cabal file "fsnotify/0.0.5/fsnotify.cabal"
Run Code Online (Sandbox Code Playgroud)

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

Ric*_*ton 6

我遇到了同样的问题.http://haskell.1045720.n5.nabble.com/Cabal-install-fails-due-to-recent-HUnit-td5715081i20.html上有关于此问题的相关邮件列表主题

我认为结果是包文件的格式已经改变,这里使用的cabal版本(我有相同的版本,从ubuntu oneiric获得)无法理解文件.你甚至不能做"cabal安装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中的说明进行本地安装.