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

Windows系统下ghcup安装GHC 9.4.3失败的技术求助

GHCup安装GHC时遇到curl证书吊销检查错误的解决方案

问题详情

执行ghcup install ghc 9.4.3安装GHC时失败,错误核心为curl的证书吊销检查失败:

[ Warn  ] 有可用的新版本cabal,执行`ghcup install cabal 3.8.1.0`进行升级
[ Info  ] 正在验证gs.exe的摘要
[ Info  ] 正在下载:https://downloads.haskell.org/~ghc/9.4.3/ghc-9.4.3-x86_64-unknown-mingw32.tar.xz 到文件 C:\ghcup\tmp\ghcup-ad812d90b7e92bc1\ghc-9.4.3-x86_64-unknown-mingw32.tar.xz
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
curl: (35) schannel: next InitializeSecurityContext failed: Unknown error (0x80092012) - 吊销函数无法检查证书的吊销情况。
[ Error ] 下载失败:进程 "curl" 参数为 ["-fL", "-o",
[ ...   ]                                                 "C:\\ghcup\\tmp\\ghcup-ad812d90b7e92bc1\\ghc-9.4.3-x86_64-unknown-mingw32.tar.xz.tmp",
[ ...   ]                                                 "https://downloads.haskell.org/~ghc/9.4.3/ghc-9.4.3-x86_64-unknown-mingw32.tar.xz"] 退出码35。
[ Error ] 同时可查看日志文件:C:\ghcup\logs

日志内容:

Debug: 识别到平台为:Windows
Debug: 上次访问在9.7176814秒前,缓存间隔为300秒
Debug: 正在解码yaml文件:C:\ghcup\cache\ghcup-0.0.7.yaml
Warn: 有可用的新版本cabal,执行`ghcup install cabal 3.8.1.0`进行升级
Info: 正在验证gs.exe的摘要
Debug: 请求安装GHC版本9.4.3
Info: 正在下载:https://downloads.haskell.org/~ghc/9.4.3/ghc-9.4.3-x86_64-unknown-mingw32.tar.xz 到文件 C:\ghcup\tmp\ghcup-ad812d90b7e92bc1\ghc-9.4.3-x86_64-unknown-mingw32.tar.xz
Error: 下载失败:进程 "curl" 参数为 ["-fL", "-o",
                                                "C:\\ghcup\\tmp\\ghcup-ad812d90b7e92bc1\\ghc-9.4.3-x86_64-unknown-mingw32.tar.xz.tmp",
                                                "https://downloads.haskell.org/~ghc/9.4.3/ghc-9.4.3-x86_64-unknown-mingw32.tar.xz"] 退出码35。
Error: 同时可查看日志文件:C:\ghcup\logs

直接在PowerShell中执行curl命令(如下)也触发相同错误:

curl.exe -fL -o "C:\ghcup\tmp\ghcup-3da46c8d7d5a204f\ghc-9.2.5-x86_64-unknown-mingw32.tar.xz.tmp" "https://downloads.haskell.org/~ghc/9.2.5/ghc-9.2.5-x86_64-unknown-mingw32.tar.xz"

错误信息:curl: (35) schannel: next InitializeSecurityContext failed: Unknown error (0x80092012) - 吊销函数无法检查证书的吊销情况。


解决方法

方法1:临时禁用curl证书吊销检查

在当前PowerShell会话中设置环境变量,让ghcup调用curl时跳过吊销检查:

$env:GHCUP_CURL_OPTS="--ssl-no-revoke"

设置完成后重新执行ghcup install ghc 9.4.3即可。

若要永久生效,可将该环境变量添加到系统/用户环境变量:

  • 打开「系统属性」→「高级」→「环境变量」
  • 新建变量,变量名GHCUP_CURL_OPTS,变量值--ssl-no-revoke
  • 重启PowerShell后执行安装命令

方法2:修复Windows证书服务

  1. 按下Win+R,输入services.msc打开服务管理器
  2. 找到「Cryptographic Services」服务,确认其处于运行状态
  3. 若未运行则右键启动,若已运行则右键重启
  4. 重新尝试ghcup安装命令

方法3:手动下载安装包后重试

  1. 手动下载对应版本的GHC安装包(如ghc-9.4.3-x86_64-unknown-mingw32.tar.xz)
  2. 将下载的文件放到ghcup临时目录(路径可从错误信息中获取,如C:\ghcup\tmp\ghcup-ad812d90b7e92bc1\)
  3. 再次执行ghcup install ghc 9.4.3,ghcup会检测到已下载文件并跳过下载步骤

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 22:21:03