使用 ghcup 安装 GHC 时如何修复此错误?

How do I fix this error when installing GHC with ghcup?

我正在尝试在 windows 笔记本电脑 运行 和 Ubuntu 子系统上使用 ghcup 安装 GHC。我不断收到同样的错误,我什至不知道出了什么问题。以下是错误消息:

[ Info  ] verifying digest of: ghc-8.10.7-x86_64-fedora27-linux.tar.xz
[ Info  ] Unpacking: ghc-8.10.7-x86_64-fedora27-linux.tar.xz to /tmp/ghcup-61d1fb5776edc19e
[ Info  ] Installing GHC (this may take a while)
[ ghc-make ] # on Win64, "install -s" calls a strip that doesn't understand 64bit binaries.
[ ghc-make ] # For some reason, this means the DLLs end up non-executable, which means
[ ghc-make ] "utils/ghc-cabal/dist-install/build/tmp/ghc-cabal-bindist" copy compiler stage2 "strip" '' '/home/levi...
i...         Installing library in /home/levi/.ghcup/ghc/8.10.7/lib/ghc-8.10.7/ghc-8.10.7
i...         "/home/levi/.ghcup/ghc/8.10.7/lib/ghc-8.10.7/bin/ghc-pkg" --force --global-package-db "/home/levi/.gh...
[ ghc-make ] ghc-pkg: Couldn't open database /home/levi/.ghcup/ghc/8.10.7/lib/ghc-8.10.7/package.conf.d for modific...
i...         make[1]: *** [ghc.mk:985: install_packages] Error 1
             make: *** [Makefile:51: install] Error 2
[ Error ] BuildFailed failed in dir "/tmp/ghcup-61d1fb5776edc19e": Process "make" with arguments ["install"] failed with exit code 2.
[ ...   ]     Check the logs at /home/levi/.ghcup/logs and the build directory /tmp/ghcup-61d1fb5776edc19e for more clues.
[ ...   ]     Make sure to clean up /tmp/ghcup-61d1fb5776edc19e afterwards.
"_eghcup --cache install ghc recommended" failed!
levi@LAPTOP-BBDADJ2R:~$

关于为什么会发生这种情况以及如何解决它有什么想法吗?

Judging by this issue on the ghcup repo(它引用了与您相同的错误),您使用的是不受支持的 WSL 1。您必须升级到 WSL 2。

$ sudo apt-get update -y && sudo apt-get install build-essential curl libffi-dev libffi7 libgmp-dev libgmp10 libncurses-dev libncurses5 libtinfo5 -y