首页 文章

Stack:如何在`Setup.hs`中使用多包依赖?

提问于
浏览
5

我有一个 stack 多包项目,其中"multi-package"是 zip-conduit-0.2.2.2 (我需要调整一些依赖版本以使其用 nightly-2015-10-12 进行编译) .

我在主包中使用 zip-conduit ,我也想在 Setup.hs 中为了能够打包zip文件 .

我的cabal文件中有 build-type: Customstack build 尝试构建 Setup.hs . 问题是构建 Setup.hs 找不到依赖项 zip-conduit-0.2.2.2 .

我可以在 Setup.hs 中使用多包依赖吗?如果是这样的话?如果没有,我的替代方案是什么?

注意:我看过这个参考https://github.com/commercialhaskell/stack/pull/899,但我不明白 .

2 回答

  • 5

    看起来您需要为该包将explicit-setup-deps设置为true . 它自动处理这种情况,但是在.cabal文件中没有依赖信息,似乎没有替代方案 .

    如果您对此处的历史感兴趣,请参阅文档中的链接问题 .

  • 0

    我认为不可能为Setup.hs本身声明包依赖项 .

    一些想法:

    • 要求已安装依赖包 .

    • Setup.hs shell输出到外部命令以执行压缩,并且只需要外部命令必须存在 .

    • 使安装程序成为cabal文件中的附加exe目标 . 在继续构建库之前,Setup.hs可以构建安装程序目标,然后构建库,然后使用构建的安装程序exe来安装库 .

相关问题