gpt4 book ai didi

haskell - 如何在 ghci 中使用 cabal 的 MIN_VERSION_ 和其他宏?

转载 作者:行者123 更新时间:2023-12-04 02:59:17 24 4
gpt4 key购买 nike

当我使用 Cabal 的各种 MIN_VERSION_ Haskell 项目中的宏,当我不使用 cabal 时,如何确保它们都被正确定义,例如在 GHCi 中测试时?

最佳答案

如今,cabal支持 cabal repl子命令,它为您完成所有设置,所以至少对于 ghci以下是不必要的。尽管如此:
cabal build命令生成文件dist/build/autogen/cabal_macros.h ,其中包含您需要的所有定义。为了在 ghc 调用中包含该文件,您需要标志 -optP-include -optPdist/build/autogen/cabal_macros.h .

为方便起见,您可以将以下内容放在 .ghci 中项目目录下的文件:

:set -optP-include -optPdist/build/autogen/cabal_macros.h

这样您就不必每次想使用 ghci 时都输入选项。

但请注意:宏将根据您上次运行时的配置定义 cabal build ,并且在您安装新软件包或使用不同的 GHC 版本时不会更新:为此您需要重新配置和重建软件包。

(感谢图书馆名单上的 Simon Hengel 提供的智慧: http://www.haskell.org/pipermail/libraries/2012-September/018491.html)。

关于haskell - 如何在 ghci 中使用 cabal 的 MIN_VERSION_ 和其他宏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12546757/

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