首页 > 解决方案 > 无法将软件包安装到 nix-build 项目

问题描述

在为 obelist 项目运行后nix-build -o frontend-result -A ghcjs.frontend,它会出现几个导入错误,其中之一是:

src/Frontend.hs:10:1: error:
    Could not find module ‘Control.Monad.Trans’
    Perhaps you meant
      Control.Monad.Fail (from base-4.11.1.0)
      Control.Monad.Fix (from base-4.11.1.0)
      Control.Monad.ST (from base-4.11.1.0)
    Use -v to see a list of the files searched for.

之后我尝试安装包cabal new-install Control

cabal: Could not resolve dependencies:
[__0] trying: backend-0.1 (user goal)
[__1] unknown package: obelisk-route (dependency of backend)
[__1] fail (backjumping, conflict set: backend, obelisk-route)

标签: reflex

解决方案


reflex 和 obelix 都使用 cabal 来声明依赖关系,但实际上是通过 nix 安装它们。因此,您假设将 mtl 包(如上例)添加到 field build-depends 下的 frontend.cabal 中。


推荐阅读