You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在WSL环境下运行stack ghci,hLock无效参数报错如何解决?

这个报错是WSL1的文件锁机制不兼容GHC安装时的锁调用导致的,按照以下步骤处理:

步骤1:确认WSL版本

在Windows的cmd或PowerShell中执行命令:
wsl --list --verbose
查看你当前运行的Ubuntu 20.04对应的VERSION字段,如果为1,就是本次报错的核心原因。

解决方案1(推荐):升级到WSL2

  • 先在Windows「启用或关闭Windows功能」中勾选「虚拟机平台」,重启系统生效
  • 打开PowerShell执行:
    wsl --set-default-version 2
  • 再执行命令转换现有Ubuntu发行版的WSL版本:
    wsl --set-version Ubuntu-20.04 2
    等待转换完成后,进入WSL环境执行以下命令清理残留的错误安装文件:
    rm -rf ~/.stack/programs/x86_64-linux/ghc-tinfo6-8.10.7*
    重新运行stack ghci即可正常完成GHC安装。

解决方案2(无法升级WSL2时使用):禁用Stack的文件锁策略

如果你暂时不能升级到WSL2,可以修改Stack配置规避锁兼容问题:

  • 编辑Stack全局配置文件:
    vim ~/.stack/config.yaml
  • 在配置文件中添加一行:
lock-policy: none
  • 保存退出后,执行命令清理残留的错误安装文件:
    rm -rf ~/.stack/programs/x86_64-linux/ghc-tinfo6-8.10.7*
  • 重新运行stack ghci即可正常安装。

内容的提问来源于stack exchange,提问作者Evgeniy Tishin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 18:06:06