2011-09-25 41 views

risposta

7

Ho sicuramente avuto esperienze di aggiornamento irregolari con la piattaforma Haskell. Se si dispone di abbastanza guai che si desidera solo per pulire la cosa e ricominciare (! Non sarebbe il primo), date un'occhiata qui:

Everywhere that GHC/Haskell Platform installs

5

Per quanto ne so non esiste un meccanismo di aggiornamento. E non ho mai avuto problemi con l'installazione di una versione della piattaforma sull'altra su OSX.

+0

Grazie. Andrò avanti e lo farò allora. –

2

vengo dal futuro (06/2013) e ho appena dovuto nuke la mia intera installazione della piattaforma haskell per installare con successo un nuovo. Quindi ... non c'è ancora un modo agevole di aggiornamento. (Almeno in OS X)

+0

Per chi si chiede ... Per prima cosa ho provato ad installare una versione su una più vecchia, ma stavo riscontrando problemi nell'installare le librerie attraverso la cabal. –

2

Se è necessario nuke la piattaforma esistente dipende da dove è configurata la cabala per installare i pacchetti.

In Mac OS X, il fornito cabala-installazione viene modificato per creare una configurazione che separa i pacchetti dalla versione GHC. Se questa è la configurazione che hai usato, puoi semplicemente installare la piattaforma Haskell su quella vecchia.

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

binari specifici per l'impianto, come quelli di gtk2hs-buildtools, sono separati solo con una configurazione come sopra. Per quanto ne so, almeno l'effettivo registro dei pacchetti (in ~/.ghc/$GHC_VERSION, usato da ghc-pkg e cabal) è invece sempre per versione-GHC. La configurazione generata da una vanale cabal-install (da Hackage) non prende tali precauzioni.

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

Se si dispone di una tale configurazione, mi aspetto che si sta andando ad avere problemi a meno che non si rimuove almeno i dati in ~/.cabal, e anche i binari nel /usr/local dalla vecchia piattaforma Haskell - ma non Nuke l'intera directory, dal /usr/local viene spesso utilizzata per l'installazione di altri software!

La configurazione di default viene generata solo quando non esiste alcuna configurazione, quindi per aggiornare la configurazione è necessario spostare quello esistente.

Problemi correlati