El Capitan更新后Haskell和Cabal失踪

El Capitan更新后Haskell和Cabal失踪,haskell,ghc,cabal,osx-elcapitan,Haskell,Ghc,Cabal,Osx Elcapitan,升级到OS X El Capitan后,在我的系统上再也找不到Cabal和GHC: -bash: ghc: command not found -bash: cabal: command not found 我需要做什么才能让Cabal和GHC在OS X El Capitan上工作?我相信El Capitan不再允许用户更改Haskell二进制文件的安装位置 如果您可以将程序复制/安装到/usr/local/bin中,它们应该可以在那里工作 如果程序在/usr/bin中不再可见,我建议将HP重

升级到OS X El Capitan后,在我的系统上再也找不到Cabal和GHC:

-bash: ghc: command not found
-bash: cabal: command not found

我需要做什么才能让Cabal和GHC在OS X El Capitan上工作?

我相信El Capitan不再允许用户更改Haskell二进制文件的安装位置

如果您可以将程序复制/安装到
/usr/local/bin
中,它们应该可以在那里工作

如果程序在/usr/bin中不再可见,我建议将HP重新安装到其他分区中。然后将它们复制到/usr/local


让我知道它是如何运行的。

我发现以下方法在所有版本的OSX(包括El Capitan)上都是最可靠的

  • 运行
    brew安装ghc

  • 运行
    brew安装cabal安装


  • 使用此方法,您可以轻松安装最新版本,并安装多个版本,还可以使用
    brew switch
    命令在它们之间轻松切换。Haskell平台缺少这些属性,这就是为什么高级用户倾向于以任何方式避免它。

    编辑:现在有一个解决这些问题的方法。

    这一切都是由El Capitan中新的“”功能造成的

    您不需要复制或重新安装程序,
    /usr/bin
    中的文件始终只是符号链接,指向
    /Library/Frameworks/GHC.framework/
    /Library/Frameworks/HaskellPlatform.framework
    中可用的内容。因此,您应该能够从那里再次对它们进行符号链接(这次链接到
    /usr/local/bin

    另见


    希望能够很快发布一个新的平台版本来解决这些问题。

    是否计划更新GHC或Cabal来解决这个问题。手动移动东西似乎有点脆弱。顺便说一句:复制不是一个选项,因为EC安装似乎会删除它在
    /usr
    中不喜欢的任何内容。如果可以,请在HP github站点上为此创建一个问题,以便跟踪:另外-程序是否仍然存在于/usr/bin中(但不可执行)或者升级已经完全删除了它们?升级会清除所有非苹果产品的
    /usr
    (除了
    /usr/local
    ),这是个好主意。如何摆脱现有的Haskell平台安装(我想先清理一下)?我在
    /Users/Roy/Library/Haskell/ghc-7.10.2-x86_64/lib中的现有软件包会保留吗?我还能使用它们吗?如果没有更好的方法,你可以简单地删除文件(安装和软件包目录)。即使你什么都不做,我也不希望发生任何冲突。Brew安装的Cabal使用不同的目录结构,因此您必须稍微乱一点以保留软件包,但我宁愿放弃它们,让Cabal完成它的工作,并在需要时安装它们。听起来很有希望。Homebrew将安装的软件包放在哪里?在那件事上,它把
    时髦的haskell
    hlint
    的可执行文件放在哪里了?我找不到它们?我似乎还有一个
    ~/Library/haskell
    ,我想我应该删除它(自制
    阴谋集团安装
    不应该把东西放对吗?)。你可以扔掉旧东西。“自制”设置的库和可执行文件都安装在
    ~/.cabal
    .FWIW的子目录中。我昨晚测试了候选者,它似乎工作得很好。(我昨晚已经向sclv报告了这一点,所以这不算额外的成功报告。)