WSL环境下安装Haskell GHCi调试适配器报错求助
解决WSL中安装Haskell调试器时
GHCi.GhcApiCompat模块缺失的问题 问题原因
GHCi.GhcApiCompat是旧版GHC(如8.10系列)工具链中的兼容模块,新版GHC(9.x及以上)的API结构发生了变更,而你使用的haskell-dap、ghci-dap、haskell-debug-adapter包版本未适配新版GHC,因此出现模块找不到的错误。
解决方案
1. 指定兼容的Stack Resolver版本安装
选择已知兼容的LTS resolver(如lts-18.x,对应GHC 8.10.7),执行以下命令:
stack install --resolver lts-18 haskell-dap ghci-dap haskell-debug-adapter
2. 安装指定版本的兼容包
如果指定resolver仍有问题,直接安装经过验证的兼容版本:
stack install haskell-dap@0.0.22 ghci-dap@0.0.19 haskell-debug-adapter@0.0.36
3. 清理Stack缓存并更新环境
先更新Stack工具并清理缓存,再重新尝试安装:
stack upgrade stack update stack clean --full
4. 备选:使用Cabal安装
如果Stack安装始终有问题,切换到Cabal工具进行安装:
# 安装Cabal(若未安装) sudo apt install cabal-install # 更新Cabal包索引 cabal update # 安装调试器组件 cabal install haskell-dap ghci-dap haskell-debug-adapter
内容的提问来源于stack exchange,提问作者edamondo
相关产品推荐
相关产品推荐

