在Ubuntu16.10中,因?yàn)閜id的問題,所以安裝時(shí)需要注意。
安裝ghc8的情況下
在這種情況時(shí),先通過(guò)apt安裝haskell-platform,然后將stack的master分支clone下來(lái),并通過(guò)stack build --resolver lts-6.25 使用ghc7.10.3進(jìn)行編譯。編譯好后,可以復(fù)制到用戶家目錄的.local/bin下。
接下來(lái)可以使用 stack setup 安裝ghc8,安裝好之后可以創(chuàng)建項(xiàng)目并build。
安裝好ghc8后,通過(guò)stack install cabal-install安裝cabal,但很有可能安裝失敗。
但是使用ghc8需要注意的是,有些包還沒有對(duì)ghc8很好的進(jìn)行支持,所以通過(guò)stack install package會(huì)長(zhǎng)生錯(cuò)誤,如ghc-mod。
安裝ghc7的情況下
這種情況下,安裝好haskell-platform后,直接通過(guò)haskellstack.org上面的安裝直接安裝。安裝好后,通過(guò)stack install cabal-install --resolver lts-6.25 安裝cabal。
安裝好cabal后,通過(guò)cabal update 更新一下cabal的索引。
之后便可以通過(guò)stack install 包名 --resolver lts-6.25安裝想要安裝的包了。
之后使用stack時(shí),需要一直使用--resolver lts-6.25標(biāo)簽才可以匹配7.10.3的版本。
不知道stack的1.x版本是否默認(rèn)7.10.3, 沒有試過(guò)。
ghc7兼容性很好,所以目前推薦使用。