Какой самый гладкий способ обновить платформу haskell до последней версии? - PullRequest
19 голосов
/ 25 сентября 2011

Я на OSX 10.6 и у меня платформа 2010.2.0.0 в настоящее время. Стоит ли просто установить 2011.2.0.1 поверх или есть механизм обновления, который будет более плавным?

Ответы [ 4 ]

7 голосов
/ 26 сентября 2011

У меня определенно были проблемы с апгрейдом на платформе Haskell.Если у вас достаточно проблем, что вы просто хотите стереть вещь и начать все заново (вы не будете первыми!), Посмотрите здесь:

Везде, где установлена ​​платформа GHC / Haskell

5 голосов
/ 25 сентября 2011

Насколько я знаю нет механизма обновления. И у меня никогда не было проблем с установкой одной версии платформы поверх другой в OSX.

2 голосов
/ 14 августа 2013

Требуется ли ядерное оружие для существующей платформы, зависит от того, где Cabal настроен для установки пакетов.

В Mac OS X поставляемый cabal-install *1003* изменен для создания конфигурации, которая разделяет пакеты по версии 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

Если у вас есть такая конфигурация, я ожидаю, что у вас возникнут проблемы, если вы не удалите хотя бы данные из ~/.cabal, а также двоичные файлы из /usr/local из старой платформы Haskell - но не делайте ядерное оружие весь каталог, так как /usr/local часто используется для установки другого программного обеспечения!

Конфигурация по умолчанию генерируется только тогда, когда конфигурация не существует, поэтому для обновления конфигурации необходимо удалить существующую.

2 голосов
/ 11 июня 2013

Я пришел из будущего (06/2013), и мне просто нужно было уничтожить всю мою установку платформы haskell, чтобы успешно установить более новую.Так что ... до сих пор нет плавного способа обновления.(По крайней мере в OS X)

...