https://travis-ci.org/Fresheyeball/fbatch
Preprocessing library monad-parallel-0.5...
Control/Monad/Parallel.hs:67:8:
Could not find module `Control.Monad.Identity'
It is a member of the hidden package `mtl-2.2.1'.
Perhaps you need to add `mtl' to the build-depends in your .cabal file.
Use -v to see a list of the files searched for.
cabal: Error: some packages failed to install:
monad-parallel-0.5 failed during the building phase. The exception was:
ExitFailure 1
我是haskell的新手,似乎无法超越这个。我尽可能地使用.cabal
文件进行修改,每次都对Travis的子依赖失败。
请帮忙。
答案 0 :(得分:3)
如果构建在解析依赖项时失败,那么值得查看该软件包的安装版本。通常情况下,cabal应该默认为最新的,如果维护良好应该安装正常。较旧的版本当然通常意味着麻烦,如果他们的某些依赖现在已经安装了更新的,不兼容的版本。
在您的情况下,cabal尝试安装一些古老的monad-parallel-0.5
,它会导入transformers
中不存在的模块(即Control.Monad.Identity
)。更新版本0.7.1.2
不会尝试此操作,因此可以成功构建。您可以通过为.cabal
文件中的依赖项设置下限来强制执行此类最近的安装,在本例中为monad-parallel >= 0.7
。