加载模块“Distribution.Simple”时出现问题
Problem with loading module ‘Distribution.Simple’
我正在尝试使用 stack
在 Haskell 中构建一个新项目(GHC 版本 8.10.4,堆栈版本 2.7.3,cabal 版本 3.6.2.0),但当时运行 命令 stack setup
我(令人惊讶地)得到了以下错误:
Setup.hs:2:1: error:
Could not load module ‘Distribution.Simple’
It is a member of the hidden package ‘Cabal-3.2.1.0’.
You can run ‘:set -package Cabal’ to expose it.
(Note: this unloads all the modules in the current scope.)
Use -v (or `:set -v` in ghci) to see a list of the files searched for.
|
2 | import Distribution.Simple
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
此外,值得注意的是,我试图在 Internet 上寻找不同的解决方案,但没有找到适合我的解决方案。总体思路是在此处将 Cabal
显式添加到 package.yaml
文件中:
library:
source-dirs: src
dependencies:
- Cabal
但这并没有挽救我的处境。我能够在没有这一步的情况下构建项目(好吧,只是跳过了那部分),但我有兴趣解决这个问题。
此外,当我尝试构建 Haskell 包 timeit
时(例如,使用命令行),在执行时出现相同的错误
runhaskell Setup.hs configure
.
有趣的是,我以前没有这个问题(可能是我更新GHC后出现的)。
有人知道如何处理此类问题吗?有什么办法可以重新安装 GHC、cabal 或 stack(如果有帮助的话)?很高兴看到任何评论和解决方案。
我遇到了同样的问题。
正在删除文件
~/.ghc/*/environments/default
(或整个文件夹 .ghc
)解决了 stack setup
问题。
它们似乎以某种方式与堆栈的操作交互。
而不是删除
~/.ghc/*/environments/default
文件,只需将Cabal包添加到其中,包括版本号,如果你运行命令就可以找到它:
ghc-pkg list
我正在尝试使用 stack
在 Haskell 中构建一个新项目(GHC 版本 8.10.4,堆栈版本 2.7.3,cabal 版本 3.6.2.0),但当时运行 命令 stack setup
我(令人惊讶地)得到了以下错误:
Setup.hs:2:1: error:
Could not load module ‘Distribution.Simple’
It is a member of the hidden package ‘Cabal-3.2.1.0’.
You can run ‘:set -package Cabal’ to expose it.
(Note: this unloads all the modules in the current scope.)
Use -v (or `:set -v` in ghci) to see a list of the files searched for.
|
2 | import Distribution.Simple
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
此外,值得注意的是,我试图在 Internet 上寻找不同的解决方案,但没有找到适合我的解决方案。总体思路是在此处将 Cabal
显式添加到 package.yaml
文件中:
library:
source-dirs: src
dependencies:
- Cabal
但这并没有挽救我的处境。我能够在没有这一步的情况下构建项目(好吧,只是跳过了那部分),但我有兴趣解决这个问题。
此外,当我尝试构建 Haskell 包 timeit
时(例如,使用命令行),在执行时出现相同的错误
runhaskell Setup.hs configure
.
有趣的是,我以前没有这个问题(可能是我更新GHC后出现的)。
有人知道如何处理此类问题吗?有什么办法可以重新安装 GHC、cabal 或 stack(如果有帮助的话)?很高兴看到任何评论和解决方案。
我遇到了同样的问题。 正在删除文件
~/.ghc/*/environments/default
(或整个文件夹 .ghc
)解决了 stack setup
问题。
它们似乎以某种方式与堆栈的操作交互。
而不是删除
~/.ghc/*/environments/default
文件,只需将Cabal包添加到其中,包括版本号,如果你运行命令就可以找到它:
ghc-pkg list