【问题标题】:How to install Haskell on Mac OS如何在 Mac OS 上安装 Haskell
【发布时间】:2014-03-19 07:50:10
【问题描述】:

我尝试在我的 Macbook 上安装 Haskell 两天,但无法成功。

我做了什么:

$ brew install ghc

很好。现在我正在尝试安装

$ cabal install text

并获得下一条错误消息:

Data/Text.hs:1074:4:
     error: invalid preprocessing directive
      #-}
       ^

我用谷歌搜索并找到了this

所以:

  • 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"),
       ...
    
  • brew install cabal-install

  • cabal 安装文本

我也收到了同样的信息。

我该如何解决?

【问题讨论】:

    标签: macos haskell installation


    【解决方案1】:

    brew install ghc cabal-install

    如果您更喜欢自制软件。

    注意: (已编辑添加) Homebrew 的 ghc 版本可能比 OSX 的 Haskell 平台下载版本更旧(或更新),并且可能存在其他差异.您 can check the release notes here 获取 Haskell 平台中包含的版本,以及其他感兴趣的信息。 brew info ghc cabal-install 将为您提供有关 Homebrew 版本的最新信息。

    注意:我上次这样做时,我只是安装了 haskell-stack,如 Filippo 的回答中所述。

    【讨论】:

    • brew info 很有帮助!
    • 一旦你这样做,准备让你的计算机燃烧 30-60 分钟,这将永远编译。看看stackoverflow.com/a/29247096/99834,通过安装二进制文件在两分钟内完成。
    【解决方案2】:

    通过homebrew 安装“Haskell Stack”二进制文件:

    brew install haskell-stack
    

    编辑:低于我原来的答案

    如果您想通过自制软件安装Haskell Platform 二进制文件:

    brew install cask
    brew cask install haskell-platform
    
    cabal install cabal-install
    

    【讨论】:

    • 截至 2020 年 5 月:Error: Cask 'haskell-platform' is unavailable: No Cask with this name exists.
    • 好吧@Indigenuity 时代已经过去了,现在的命令是:brew install haskell-stack 感谢提醒,我已经更新了我的答案
    【解决方案3】:

    尝试使用Mac version of the Haskell Platform,我没有Mac 可以试用,但我希望cabal 可以在Haskell 平台中开箱即用。

    【讨论】:

    • “Haskell 平台自 2022 年起已弃用,不再推荐安装 Haskell 的方式。有关安装 Haskell 的最新推荐方式,请参阅下载页面。”
    【解决方案4】:

    以下信息表明可能有可用的 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
    

    【讨论】:

    • 现在它显示了三个组件:ghc、cabal-install 和 haskell-stack
    【解决方案5】:

    有一个新的ghc-dot-app 项目可以替代 Homebrew 公式和 Haskell 平台官方安装程序。这是该项目的网页:Haskell for Mac OS X。这是Haskell Cafe 上的一个讨论主题:“Self-contained GHC for Mac”。以下是作者发文的引述:

    它是如何工作的?

    https://github.com/ghcformacosx/ghc-dot-app 我有一个 Main.hs 脚本 哪些下载/构建/等。所有的先决条件。然后它修补 使用相对于自身的路径的 shell 脚本(之后 遵循符号链接)而不是硬编码安装位置。 它还修补 package.conf.d 文件以使用 ${pkgroot} 相对 路径。

    另外,还有一个包含所有元数据的 Xcode 项目 让它看起来像一个真正的 Mac 应用程序包(图标、Info.plist)和一个 具有打开文档的按钮的小型 Cocoa 应用程序和 提供将其添加到 .bashrc 中的 PATH 的说明。因为 Mac OS X 的 man 中的启发式方法,这将自动生成手册页 也可以工作。

    【讨论】:

      【解决方案6】:

      尝试使用 brew install haskell-platform 安装 Haskell。

      如果您已经使用 Mavericks,则必须安装 GCC(因为 Mavericks 附带 Clang)。请按照此处的说明操作:https://gist.github.com/cartazio/7131371

      【讨论】:

      • 是的,这绝对是homebrew用户的魔法咒语。
      • 遗憾的是,homebrew 不再支持 haskell-platform,至少从 2014 年 9 月 8 日开始。请参阅 github.com/Homebrew/homebrew/issues/31609
      • @nonrectangular 是的,haskell-platform 已从 homebrew 中删除,但可从 homebrew cask 获得。刚安装使用brew cask install haskell-platform
      • 可能因为某种原因被删除了?如果是这样,也许实际上不建议安装 cask'd 版本。
      • brew install ghc cabal-install haskell-stack
      猜你喜欢
      • 2021-12-14
      • 2020-04-04
      • 1970-01-01
      • 1970-01-01
      • 2013-03-20
      • 2010-11-15
      • 2014-11-29
      • 2011-04-10
      • 2012-07-27
      相关资源
      最近更新 更多