testing - 在 Ubuntu 上找不到模块 `Test.QuickCheck'

标签 testing haskell ubuntu

我在文件顶部导入 QuickCheck:

import Test.QuickCheck
...

ghc Lab1.hs 编译文件给我这个错误:

Lab1.hs:1:8:
    Could not find module `Test.QuickCheck'
    Use -v to see a list of the files searched for.
Failed, modules loaded: none.

我尝试使用 apt-cache 搜索 quickcheck 并得到了一个糟糕的包列表。尝试安装 libghc-test-framework-dev 只是因为我认为这个名称似乎合适,但错误仍然存​​在。

如何安装 QuickCheck 模块?

最佳答案

如果你有兴趣在你的包管理器之外管理你的 Haskell 包(如果你有兴趣使用最新版本的东西,这可能是有益的)那么 Cabal 是 Haskell 包管理器,它允许你做

apt-get install cabal-install
cabal update
cabal install QuickCheck

使 QuickCheck 在全局范围内可用。

最近更推荐的是使用 sandbox cabal 的特点。这与 Python 的 virtualenv 非常相似。或 Ruby 的 bundle如果你更熟悉那些。为此,您必须创建一个“cabalized”项目

cabal init        # in an empty directory

然后放QuickCheck (以及您的其他库依赖项)在 build-depends: 中生成的插槽 <folder name>.cabal文件。

完成此操作后,您可以使用 Cabal 进行所有进一步的包管理和编译命令。

cabal sandbox init                  # creates your local package sandbox
cabal install --only-dependencies   # gets and installs all the build-dependencies

cabal repl                          # starts up GHCi in the local sandbox
cabal build                         # configures and builds the local project

cabal sandbox delete                # cleans up the sandbox

关于testing - 在 Ubuntu 上找不到模块 `Test.QuickCheck',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19661885/

相关文章:

haskell - 在 Haskell 中定义数据结构的建议

html - Haskell - Parsec 解析 <p> 元素

postgresql - 允许远程连接 postgresql

python - driver.quit() 和 pkill chrome 释放内存的效果一样吗?

spring - 为什么使用 SpringJUnit4ClassRunner.withAfterClasses 方法出现神秘的 MultipleFailureException 错误消息

javascript - 在 Protractor 中返回函数值时未定义

haskell - 如何分析具有大量 System.Process.read 进程的 Haskell 程序?

javascript - 在 Mac 上将 Behat 和 Mink 与 Selenium 和 Chrome 或 Safari 或 Firefox 连接

testing - Ajax TruClient,使用范围和限制?

python - 全屏 Python TKinter 或 wxPython 窗口,但所有窗口的 'stay at the bottom'?