gpt4 book ai didi

haskell - 创建测试套件时出错 : "cannot satisfy -package-id"

转载 作者:行者123 更新时间:2023-12-03 15:08:29 25 4
gpt4 key购买 nike

我正在尝试为我的项目创建一个测试套件,HaskSplit在我的 .cabal 配置中:

-- Initial HaskSplit.cabal generated by cabal init.  For further 
-- documentation, see http://haskell.org/cabal/users-guide/

name: HaskSplit
version: 0.1.0.0
synopsis: Haskell Implementation of Shamir's Secret Sharing Scheme
-- description:
license: MIT
license-file: LICENSE
author:
maintainer:
-- copyright:
category: Security
build-type: Simple
-- extra-source-files:
cabal-version: >=1.10

executable HaskSplit
main-is: Main.hs
default-language: Haskell2010
-- other-modules:
other-extensions: TemplateHaskell, NoImplicitPrelude, RankNTypes, OverloadedStrings
build-depends: base >=4.6 && <4.7,
resourcet >=1.1 && <1.2,
bytestring >=0.10 && <0.11,
conduit-extra >=1.1 && <1.2,
vector >=0.10 && <0.11,
conduit >=1.1 && <1.2,
conduit-combinators >=0.2 && <0.3,
mono-traversable >=0.5 && <0.6,
safe >=0.3 && <0.4,
transformers >=0.3 && <0.4,
filepath >= 1.3,
directory >=1.2,
Glob >= 0.7.4,
errors >= 1.4,
optparse-applicative >= 0.8
hs-source-dirs: src
default-language: Haskell2010
ghc-options: -Wall -fno-warn-orphans

test-suite tests
type: exitcode-stdio-1.0
default-language: Haskell2010
hs-source-dirs: tests
main-is: Test.hs
ghc-options: -Wall -fno-warn-orphans
build-depends: base == 4.*,
QuickCheck >=2.6 && <2.7,
test-framework-quickcheck2 >= 0.3.0.3,
HaskSplit

查看示例测试套件设置 here ,我注意到他们将自己的包指定为构建依赖模块之一。因此我做了同样的事情,这样我就可以保留我的 build-depends我的测试套件简短列表。

但是,当我尝试 cabal repl test:tests在命令行中,我收到以下错误:
<command line>: cannot satisfy -package-id HaskSplit-0.1.0.0-inplace

我不太确定我在这里缺少什么,有人可以帮我吗?是不是这里发生了循环依赖?或者我是否需要创建我的包的库实例以使构建依赖项工作?

谢谢!

最佳答案

build-depends部分只能包含库,不能包含模块。我建议你在你的 cabal 文件中添加一个库。 exposed-modules库的部分应该列出您的测试(或库的任何其他用户)可能需要引用的所有模块。

作为创建库的替代方法,您可以简单地将所需的模块添加到 test-suite 部分的 other-modules 部分。但是,如果您想包含很多模块,我认为库方法更好。

关于haskell - 创建测试套件时出错 : "cannot satisfy -package-id",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23803725/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com