2013-03-17 40 views
9

我已經在Windows 7中安裝了Haskell Platform 2012.我在控制檯cabal update中編寫了一個消息,說明有一個新版本的cabal。我寫cabal install cabal-install。安裝完成後,它告訴我cabal已安裝在C:\ username \ AppData \ Roaming \ cabal中。所以當我再次做cabal update時,我正在接受同樣的信息,我必須安裝新版本的cabal。我試圖從配置文件中更改cabal目錄,但cabal忽略配置文件。 Haskell只能在Unix上工作嗎?由於如何在Windows 7中配置cabal?

+1

恕我直言,一個人永遠都不應使用「陰謀小集團安裝 - 安裝」如果一個人剛開始用Haskell的旅途用新的哈斯克爾plattfrom。只需使用cabal update來更新軟件包列表。唯一應該更新自己的人會知道什麼時候該做,如果你不知道,不要這樣做 – Jonke 2013-03-18 08:51:56

+1

@Jonke那麼人們什麼時候這樣做呢? – osager 2014-04-26 16:16:51

+0

當你想要新版本的ghc的cabal的最新版本,並沒有haskell平臺。例如,如果你得到ghc 7.8.2的二進制版本,你可以得到cabal 1.18的二進制版本,但是對於cabal 1.20,沒有二進制版本,那麼你就可以做到了。 (恕我直言) – Jonke 2014-04-29 08:58:20

回答

13

問題是,隨着Haskell平臺附帶的cabal可執行文件被拿起,而不是您安裝的那個。

您需要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'被賦予更高的優先級。 – 2013-03-17 14:59:04

2

錯誤消息不完整。全球範圍內安裝的小集團安裝:

cabal install cabal-install --global 
+1

謝謝,我從來不知道--global – 2015-02-19 23:43:50