将Haskell平台更新到最新版本的最流畅方法是什么?



我在OSX 10.6和我的平台2010.2.0.0目前。我应该直接在上面安装2011.2.0.1还是有一个更平滑的更新机制?

我在Haskell平台上肯定有过颠簸的升级经历。如果你有足够的麻烦,你只想擦去东西,重新开始(你不会是第一个!),看看这里:

GHC/Haskell平台安装的所有地方

据我所知没有更新机制。我从来没有遇到过在OSX上安装一个平台版本的麻烦。

我来自未来(2013年6月),为了成功安装更新的haskell平台,我不得不拆除我的整个安装。所以…目前还没有平稳的升级方式。(至少在OS X中)

是否需要nuke现有平台取决于cabal被配置为安装包的位置。

在Mac OS X上,提供的 cabal-install被修改为创建一个配置,根据GHC版本分隔包。如果你使用的是这个配置,你可以在旧的上面安装Haskell平台。

install-dirs user
  prefix: /Users/pgiarrusso/Library/Haskell/$compiler/lib/$pkgid
-- [...]
install-dirs global
  prefix: /Library/Haskell/$compiler/lib/$pkgid

特定于安装的二进制文件,如gtk2hs-buildtools中的二进制文件,只与上面的配置分开。据我所知,至少实际的包寄存器(在~/.ghc/$GHC_VERSION中,由ghc-pkg和cabal使用)总是每个ghc版本。由普通的cabal-install(来自Hackage)生成的配置没有采取这些预防措施。

install-dirs user
  -- prefix: /Users/pgiarrusso/.cabal
[...]
install-dirs global
  -- prefix: /usr/local

如果你有这样的配置,我预计你会遇到麻烦,除非你从旧的Haskell平台上至少删除~/.cabal中的数据,以及/usr/local中的二进制文件-但不要破坏整个目录,因为/usr/local经常用于安装其他软件!

默认配置仅在不存在配置时生成,因此要更新配置,您需要删除现有配置

相关内容

最新更新