4

因此,Ubuntu 中的 apt-get 更新将我的 GHC 版本从这个存储库更新为 7.10.3 。

在这次更新之后,一切都坏了,所以我从同一个存储库切换到 7.10.2。

现在几乎所有东西都在工作,除了 ghc-mod,它在运行时会在我尝试检查我的项目时出现以下错误:

ghc-mod: <command line>: cannot satisfy -package-id base-4.8.2.0-9bb65294401b6ef629a229811a1f4249
    (use -v for more information)

当我在我的项目上运行 cabal-install 时,我没有收到任何依赖错误。

什么可能导致这个问题?GHC-mod 中是否有需要更改的设置或需要指定的路径?

我可以提供更多信息,但我只是不知道从哪里开始这个错误。

我在 .cabal 文件中的 build-depends 部分如下所示:

  build-depends:       base >=4.8 && <4.9
                       , mtl
                       , parsec
                       , pretty
                       , readline

就像我说的,这些依赖项都安装得很好。

4

1 回答 1

1

似乎在rm -rf .stack-work帮助后重新启动了 ghc-mod 进程;stack clean由于某种原因,它似乎不够“强大”——ghc-mod对于何时应该清理和重建它并不是特别聪明——希望不是这样,但它确实如此。


或者,您ghc-mod可能需要使用它正在使用的任何 GHC 版本重新编译;如果您安装了多个版本的 GHC 并且需要ghc-mod特定版本,请传递-w path/to/ghccabal install,例如在我的情况下,我在全球范围内有 8.0.1 但需要ghc-mod7.10.3,它stack已经为我安装了.stack/programs

~/my-sandboxes/ghc-mod-7.10.3 $ cabal install -w ~/.stack/programs/x86_64-osx/ghc-7.10.3/bin/ghc ghc-mod

否则,cabal install ghc-mod应该做一个简单的。

于 2016-06-08T18:14:06.527 回答