2016-03-05 127 views
6

在Mac OS X,我無法安裝ghc-mod由於不能安裝一個名爲「快樂的」依賴性:無法安裝由於'開心'而無法安裝ghc-mod?

bash> cabal install ghc-mod                       
Resolving dependencies... 
Configuring haskell-src-exts-1.17.1... 
Failed to install haskell-src-exts-1.17.1 
Build log (/Users/meng/.cabal/logs/haskell-src-exts-1.17.1.log): 
Configuring haskell-src-exts-1.17.1... 
setup-Simple-Cabal-1.22.5.0-x86_64-osx-ghc-7.10.3: The program 'happy' version 
>=1.19 is required but it could not be found. 
cabal: Error: some packages failed to install: 
ghc-mod-5.5.0.0 depends on haskell-src-exts-1.17.1 which failed to install. 
haskell-src-exts-1.17.1 failed during the configure step. The exception was: 
ExitFailure 1 
hlint-1.9.31 depends on haskell-src-exts-1.17.1 which failed to install. 

任何想法?

+0

我知道還有一點需要學習,但考慮使用'stack'或'cabal sandboxes',對於後者你最好做一個'cabal get ghc-mod',然後cd進入ghcmod目錄,在那裏你可以做'cabal sandbox init'這會讓你的生活更容易Haskell。使用'stack'甚至更好,但已經有推薦的答案。 – epsilonhalbe

回答

9

由於某些原因,cabal不會安裝可執行文件依賴項,但您可以通過手工安裝來解決此問題。

cabal install happy 

然後繼續進行原始安裝。


這個問題通常不會消失與堆下去,但解決的辦法是類似

stack install happy 

然後繼續進行安裝。

5

它似乎程序happy未安裝在您的系統中,因此依賴於它的程序包haskell-src-exts-1.17.1(依賴於ghc-mod的依賴項)無法安裝。

今天的普遍看法,特別是對初學者來說,是不要使用工具cabal-install,而是使用stack來代替您需要的所有東西。包括安裝ghc本身。下載堆棧後,我認爲你所要做的就是運行stack install ghc-mod來安裝ghc-mod