我是很新,哈斯克爾,並試圖用驚天動地安裝耶索德,但我遇到了此編譯錯誤:編譯錯誤
cabal install yesod --force-reinstalls
Network/Wai/Parse.hs:106:61:
No instance for (Control.Monad.Trans.Resource.Internal.MonadThrow
(ConduitM S8.ByteString Void IO))
arising from a use of `allocate'
Possible fix:
add an instance declaration for
(Control.Monad.Trans.Resource.Internal.MonadThrow
(ConduitM S8.ByteString Void IO))
In the second argument of `($)', namely
`allocate
(do { tempDir <- getTmpDir;
openBinaryTempFile tempDir pattern })
(\ (_, h) -> hClose h)'
In a stmt of a 'do' block:
(key, (fp, h)) <- flip runInternalState internalState
$ allocate
(do { tempDir <- getTmpDir;
openBinaryTempFile tempDir pattern })
(\ (_, h) -> hClose h)
In the expression:
do { (key, (fp, h)) <- flip runInternalState internalState
$ allocate
(do { tempDir <- getTmpDir;
openBinaryTempFile tempDir pattern })
(\ (_, h) -> hClose h);
_ <- runInternalState (register $ removeFile fp) internalState;
CB.sinkHandle h;
lift $ release key;
.... }
Failed to install wai-extra-2.0.2
This is the full output when installing
我正在使用最新的Haskell平臺和ghc-clang-wrapper
腳本。
驚天動地版本:
$ cabal --version
cabal-install version 1.16.0.2
using version 1.16.0 of the Cabal library
GHC版本:
$ ghc --version
The Glorious Glasgow Haskell Compilation System, version 7.6.3
一些教程提用陰謀沙箱,但我的陰謀(1.16)的版本太舊了點。如果沙盒可能幫助太大,我會盡量讓它工作(更新cabal到1.18有點麻煩)。
謝謝安德魯。更新'cabal'會給出一個成功消息(「Installed cabal-install-1.18.0.2」),但哪個cabal' /'cabal --version'仍然會找到舊版本。這聽起來很容易解決,所以今晚我會弄清楚,試試'cabal sandbox'。 – MaxGabriel
你希望〜/ .cabal/bin首先在你的路徑中。你可能會從/ usr/bin或類似的東西中找到你的發行版的yesod,所以當它更新時,舊版本仍然會首先被選中。 – Tehnix