【问题标题】:Using VSCode with Haskell, ghcup and stack - hls crashes with newer versions of ghc将 VSCode 与 Haskell、ghcup 和堆栈一起使用 - hls 因 ghc 的较新版本而崩溃
【发布时间】:2022-08-03 17:15:00
【问题描述】:

我正在使用带有 Haskell 扩展的 VSCode。我安装了 ghcup 并安装了以下内容:

堆栈 2.7.5

HLS 1.7.0.0

阴谋集团 3.6.2.0

GHC 9.0.2(套装)

GHC 8.10.7

如果我有一个带有 lts-18.28 的 stack.yaml,haskell-language-server 启动并且悬停工作。如果我有带有 lts-19.16 的 stack.yaml,haskell-language-server 会崩溃。

我需要做什么才能让 haskell-language-server 与 lts-19.16 一起工作?

编辑

似乎 Ismor 将 \"system-ghc: true\" 添加到 stack.yaml 文件的注释在正确的行上。

现在 nightly-2022-06-06 (with ghc-9.2.2) 工作。

堆栈使用的 9.0.2 版本似乎与 HLS 不同,因此 lts-19.16 仍然无法正常工作。

此外,nightly-2022-07-30 不起作用,但 HLS 网页 (https://haskell-language-server.readthedocs.io/en/latest/supported-versions.html) 表示仅部分支持 ghc-9.2.3。

无论如何,我现在可以选择 ghc-8.10.7 或 ghc-9.2.2 并且仍然在 vscode 中使用 HLS,所以这对我来说已经足够好了。

编辑2

请参阅:\"ghcup compile hls\" 这里https://www.haskell.org/ghcup/guide/#hls

看这里:https://docs.haskellstack.org/en/stable/Stack_and_VS_Code/

  • 推测:您可能需要使用使用 GHC 9.0.2 编译的 HLS 版本。
  • ghcup 为我安装了 HLS。它说 (github.com/haskell/haskell-language-server/releases/tag/1.7.0.0) 支持 GHC 8.10.7、9.0.2、9.2.1、9.2.3。不过谢谢。
  • 唔。您的问题与stackoverflow.com/questions/73084162/… 有何不同?
  • 我使用解析器重新编译:nightly-2022-06-06,它使用 ghc-9.2.2 和 ghcup 中的 ghc 9.2.2 \'set\' - 服务器因此设置而崩溃。这是由于堆栈和 ghcup 之间的冲突吗?这可能是放弃堆栈并回到阴谋集团的好时机吗?
  • 您是否将stack 配置为system-ghc?如果没有,请在 stack.yaml 中添加行 system-ghc: true

标签: haskell visual-studio-code ghc haskell-stack haskell-language-server


【解决方案1】:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-04
    • 1970-01-01
    相关资源
    最近更新 更多