2013-03-17 14 views
9

Ich habe Haskell Platform 2012 in Windows 7 installiert. Ich schreibe in der Konsole cabal update und ich nehme eine Nachricht, dass es eine neue Version von Cabal gibt. Ich schreibe cabal install cabal-install. Nach Abschluss der Installation wird mir mitgeteilt, dass die CABAL in C: \ Benutzername \ AppData \ Roaming \ cabal installiert wurde. Also, wenn ich wieder cabal update mache, nehme ich die gleiche Nachricht, dass ich die neue Version von cabal installieren muss. Ich habe versucht, das Cabal-Verzeichnis von der Konfigurationsdatei zu ändern, aber Cabal ignoriert die Konfigurationsdatei. Arbeitet Haskell nur unter Unix? DankWie konfiguriert man Kabale in Windows 7?

+1

IMHO sollte man niemals 'cabal install cabal-install' verwenden, wenn man gerade die Reise mit haskell mit einer frischen Haskell-Plattform begonnen hat. Verwenden Sie einfach cabal update, um die Paketliste zu aktualisieren. Die einzigen Leute, die Cabal selbst aktualisieren sollten, wissen, wann das zu tun ist, wenn Sie es nicht wissen, tun Sie es nicht – Jonke

+1

@Jonke Also, wann machen es die Leute dann? – osager

+0

Wenn Sie die neueste Version von Cabal für eine neue Version von GhC wollen, und es gibt keine Hakerk Plattform. Zum Beispiel, wenn Sie das binäre Build für ghc 7.8.2 erhalten, können Sie einen binären Build für cabal 1.18 bekommen, aber keinen binären Build für cabal 1.20, dann tun Sie es. (IMHO) – Jonke

Antwort

13

Das Problem ist, dass die cabal ausführbare Datei, die mit Haskell Platform geliefert wurde, statt der, die Sie installiert haben, abgeholt wird.

Sie müssen edit the value of the PATH environment variable und %AppData%\cabal\bin vor %PROGRAMFILES%\Haskell Platform\...\bin platzieren, damit es höhere Priorität erhält.

2

Sie müssen C:\username\AppData\Roaming\cabal hinzufügen (oder was auch immer Verzeichnis nun die cabal ausführbaren hat - verwendet zum Beispiel dir oder Ihren Lieblings-Datei-Manager, um sicherzustellen, dass Sie den richtigen Platz haben), um Ihre %PATH% Umgebungsvariable und Ihre Eingabeaufforderung starten.

+1

Das HP Installationsprogramm fügt standardmäßig% APPDATA% \ cabal \ bin zu% PATH% hinzu. Das Problem ist, dass '% PLATFORM_DIR% \ bin' eine höhere Priorität erhält. –

2

Die Fehlermeldung ist unvollständig. Installiere cabal-install global wie folgt:

cabal install cabal-install --global 
+1

Danke, ich wusste nie über --global –