【发布时间】: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