Haskell Cabal:神秘缺失或递归依赖

mux*_*ian 5 linux install haskell cabal

我尝试安装jmacro包.它构建完美,绝对没有问题.

但是,当我想使用它或安装happstack-jmacro依赖于jmacro的软件包时,我收到如下错误消息:

<command line>: cannot satisfy -package-id jmacro-0.5.2-71bd40707d94b0e8eb6e70515ff6a5f4: 
    jmacro-0.5.2-71bd40707d94b0e8eb6e70515ff6a5f4 is unusable due to missing or recursive dependencies:
      haskell-src-meta-0.5-4bf46b12fb313927e18a04de209944de template-haskell-2.5.0.0-f0b857ddb066aae09d974e610edd228f
    (use -v for more information)
Run Code Online (Sandbox Code Playgroud)

绝对没有递归或缺少依赖.这是一个错误吗?

我正在使用template-haskell-2.5.0.0(因为较新版本不构建)和haskell-src-meta-0.5.GHC是7.0.4

ehi*_*ird 11

看起来你的包裹坏了.ghc-pkg check可能会抱怨一些包裹; 如果是的话,你可以ghc-pkg unregister <pkg>全部.否则,最好的办法可能是重新开始:保存~/.cabal/config文件,摆脱~/.ghc~/.cabal,并重新安装cabal-install.

像这样的Cabal问题相当常见,因此您可能希望通过cabal-dev来减轻疼痛.


mux*_*ian 3

好吧,我自己解决了:

有一个错误,template-haskell-2.5.0.0被安装在 cabal 的系统目录以及我的用户目录中。

当我在用户目录中强制取消注册时template-haskell,一切都很好。