dem*_*mas 25 macos installation haskell
我试图在我的Macbook上安装Haskell两天,但无法取得成功.
我做了什么:
$ brew install ghc
Run Code Online (Sandbox Code Playgroud)
精细.现在我正在尝试安装
$ cabal install text
Run Code Online (Sandbox Code Playgroud)
并获取下一条错误消息:
Data/Text.hs:1074:4:
error: invalid preprocessing directive
#-}
^
Run Code Online (Sandbox Code Playgroud)
我用Google搜索并找到了这个.
所以:
brew安装gcc48
$ /usr/local/bin/gcc-4.8 --version
gcc-4.8 (GCC) 4.8.2
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
$ cat /usr/local/lib/ghc-7.6.3/settings
[("GCC extra via C opts", " -fwrapv"),
("C compiler command", "/usr/local/bin/gcc-4.8"),
("C compiler flags", " -m64 -fno-stack-protector -m64"),
...
Run Code Online (Sandbox Code Playgroud)brew安装cabal-install
我得到了同样的消息.
我该如何解决这些问题?
Fil*_*ale 32
如果要Haskell Platform通过自制程序安装二进制文件:
brew install cask
brew cask install haskell-platform
cabal install cabal-install
Run Code Online (Sandbox Code Playgroud)
Bas*_*ink 15
尝试使用Mac版本的Haskell平台,我没有Mac试用,但我希望能cabal在Haskell平台上开箱即用.
xmk*_*hen 10
以下信息表明可能有mac安装程序可用:
brew info haskell-platform
We no longer package haskell-platform. Consider installing ghc
and cabal-install instead:
brew install ghc cabal-install
A binary installer is available:
https://www.haskell.org/platform/mac.html
Run Code Online (Sandbox Code Playgroud)
小智 9
2022 年,Haskell 平台将被弃用,官方推荐的大多数平台(包括 Mac)的方式是先安装GHCup。GHCup基本上是 Haskell 工具链的包管理器 ( GHC, Stack, Cabal, HLS)。它可以将每个版本的多个版本安装到主目录中,并将ghc/... 命令“设置”(符号链接)到特定版本。
要安装GHCup,请使用安装脚本(源)。这会安装GHCup和GHC,询问一些有关设置 PATH 等的问题,并提示您安装 Apple 开发人员命令行工具(如果发现它们丢失)。
curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh
Run Code Online (Sandbox Code Playgroud)
如果您使用的是 Mac M1 并且想要运行ghc8.10.7 或更早版本,则还需要安装llvm9 到 12(含)之间的版本,并将其放在路径中以便ghc可以找到它。但目前,9.2.4 是默认版本,它有一个可以在 M1 上开箱即用的本机代码生成器 (NCG)。不过,它可能仍然包含 M1 上的错误(有关详细信息,请参阅此处),因此请考虑使用ghcup install ghc 9.4.2 && ghcup set ghc 9.4.2. 目前,9.4.2 缺乏 8.10.7 所享有的广泛的软件包支持,但它的已知错误较少。
如果您发现自己安装混乱,您可以从头开始并重新安装开发人员工具和GHCup:
sudo rm -rf /Library/Developer/CommandLineTools
ghcup nuke
rm -rf ~/.ghcup
rm -rf ~/.stack
rm -rf ~/.cabal
# For the cautious, a reboot here is advised before proceeding
xcode-select --install
curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh
Run Code Online (Sandbox Code Playgroud)
也可以GHCup通过 Homebrew 安装,但这需要手动更新 $PATH 并安装/设置所需的工具。
brew install ghcup
# Now add $HOME/.ghcup/bin to $PATH
ghcup install ghc && ghcup set ghc
Run Code Online (Sandbox Code Playgroud)