gpt4 book ai didi

haskell - Stack/Docker/IHaskell 奇怪的行为

转载 作者:行者123 更新时间:2023-12-02 18:33:11 25 4
gpt4 key购买 nike

我有一个包含一堆 *.c 和 *.cpp 文件的包,在 c-sources 中列出*.cabal 的字段文件。我需要将它包含在带有 IHaskell 和其他一些包的项目中。一切正常,并且构建没有问题。 stack exec ghci工作正常,我可以导入模块并执行任何代码。 stack ghci虽然会引发一些奇怪的错误,例如:

In file included from <command-line>:10:0: 

/...blabla.../.stack-work/dist/x86_64-linux/Cabal-1.22.4.0/build/autogen/cabal_macros.h:157:0:
note: this is the location of the previous definition
#define CURRENT_PACKAGE_KEY "blabla"
^

stack ghci在我的包内提示从其 C 代码导出的符号。另一个奇怪的事情是符号取决于 exposed-modules 的顺序。在配置中,因此如果我将 *.hs 模块放在其他模块之上,错误就会消失,但如果我有两个 *.hs 文件从同一个 *.c 文件导入,它将无法工作! stack exec jupyter -- console --kernel haskell开始,但立即抛出 unknown symbol如果我尝试从我的包中运行一些代码,则会出错,但总是相同的。

我有一个基于 fpco/stack-build 的 docker 镜像,它只是安装 jupyter 和其他必要的东西。我用 lts-3.0快照,如果它在某种程度上相关。

到底是怎么回事?

最佳答案

最近对堆栈 ghci 进行了很多改进,这仍然主要是一项正在进行的工作。我建议测试 stack master,如果问题仍然存在,请打开 Github 问题。

关于haskell - Stack/Docker/IHaskell 奇怪的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32054409/

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