2013-03-17 1 views
9

Я установил платформу Haskell 2012 в Windows 7. Я пишу в консоли cabal update, и я беру сообщение о том, что есть новая версия cabal. Я пишу cabal install cabal-install. После завершения установки он сообщает мне, что камера была установлена ​​в C: \ username \ AppData \ Roaming \ cabal. Поэтому, когда я делаю cabal update снова, я беру то же сообщение, что мне нужно установить новую версию cabal. Я попытался изменить каталог cabal из файла конфигурации, но cabal игнорирует файл конфигурации. Работает ли Haskell только в Unix? БлагодаряКак настроить cabal в Windows 7?

+1

ИМХО один никогда не должен когда-либо использовать «междусобойчик установить междусобойчик установить», если один только начал путешествие с Haskell свежей Haskell plattfrom. Для обновления списка пакетов просто используйте обновление cabal. Единственные люди, которые должны обновить саму себя, будут знать, когда это сделать, если вы этого не знаете, не делайте этого – Jonke

+1

@ Jonke Итак, когда люди делают это? – osager

+0

Если вам нужен новейший выпуск cabal для новой версии ghc, и нет платформы haskell. Например, если вы получаете двоичную сборку для ghc 7.8.2, вы можете получить двоичную сборку для cabal 1.18, но не для бинарной сборки для cabal 1.20, тогда вы это сделаете. (IMHO) – Jonke

ответ

13

Проблема заключается в том, что исполняемый файл cabal, который поставляется с платформой Haskell, получает выбранный вместо того, который вы установили.

Необходимо указать edit the value of the PATH environment variable и разместить %AppData%\cabal\bin до %PROGRAMFILES%\Haskell Platform\...\bin, чтобы получить более высокий приоритет.

2

Вам нужно добавить C:\username\AppData\Roaming\cabal (или любой другой каталог теперь имеет cabal исполняемых - использовать, например, dir или ваш любимый файловый менеджер, чтобы убедиться, что у вас есть нужное место) в переменное окружении %PATH% и перезапустить командную строку.

+1

Установщик HP добавляет '% APPDATA% \ cabal \ bin' к'% PATH% 'по умолчанию; проблема заключается в том, что '% PLATFORM_DIR% \ bin' получает более высокий приоритет. –

2

Сообщение об ошибке является неполным. Установите междусобойчик установить во всем мире как:

cabal install cabal-install --global 
+1

Спасибо, я никогда не знал о --global –