2016-10-10 12 views
4

나는 음모 사용에 문제가 없었습니다. 이해가 부족하거나 정신이 잘못 되었기 때문에 확실하지 않지만 상황은 어려웠습니다.Haskell ghc-mod가 오류로 인해 실패합니다.

지금 나는 ghc-mod를 내 vim 플러그인에 사용할 수 있도록 노력하고 있습니다.

$ ghc-mod check Main.hs 
ghc-mod: /Users/chris/.stack/snapshots/x86_64-osx/lts-6.15/7.10.3/pkgdb/package.cache: 
GHC.PackageDb.readPackageDb: inappropriate type (Not a valid Unicode code point!) 

모든 아이디어 : 그것은 보통 하루나 이틀 동안 작동하고 다음 오류와 겉으로는 아무 이유없이 실패 시작, 내가받을 오류가 바로 지금 나는이 하나를 얻고, 수시로 변경하는 것 이런 종류의 문제를 해결하는 방법에 대해? 나는 다시 설치를 시도했습니다,하지만 난이 (내 음모 패키지를 모두 망쳐 생각하지만, 그것을 해결하는 방법을 모른다) 얻을 :

$ cabal install ghc-mod 
Resolving dependencies... 
Downloading haskell-src-exts-1.17.1... 
Configuring haskell-src-exts-1.17.1... 
Failed to install haskell-src-exts-1.17.1 
Build log (/Users/chris/.cabal/logs/haskell-src-exts-1.17.1.log): 
cabal: Entering directory '/var/folders/6l/rdh2g5wn41s8vxchngkt02_c0000gn/T/cabal-tmp-45583/haskell-src-exts-1.17.1' 
Configuring haskell-src-exts-1.17.1... 
cabal: The program 'happy' version >=1.19 is required but it could not be 
found. 
cabal: Leaving directory '/var/folders/6l/rdh2g5wn41s8vxchngkt02_c0000gn/T/cabal-tmp-45583/haskell-src-exts-1.17.1' 
cabal: Error: some packages failed to install: 
ghc-mod-5.6.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.35 depends on haskell-src-exts-1.17.1 which failed to install. 

편집 : 두 번째와 노력 멀리 보았다 다시, 지금은 그 마음을 변화 음모의 좀 아프게, 모든 시간을이 오류를 받고 있어요 :

이 오류는 내 로컬 스택 GHC 버전과 글로벌 GHC-모드 GHC 사이의 불일치를함으로써 발생 된
$ ghc-mod check Main.hs 
[1 of 5] Compiling CabalHelper.Common (CabalHelper/Common.hs, /Users/chris/.ghc-mod/cabal-helper/CabalHelper/Common.o ) 
[2 of 5] Compiling CabalHelper.Licenses (CabalHelper/Licenses.hs, /Users/chris/.ghc-mod/cabal-helper/CabalHelper/Licenses.o ) 

CabalHelper/Licenses.hs:53:18: error: 
Ambiguous occurrence ‘lookupInstalledPackageId’ 
It could refer to either ‘Distribution.Simple.PackageIndex.lookupInstalledPackageId’, 
imported from ‘Distribution.Simple.PackageIndex’ at CabalHelper/Licenses.hs:24:1-39 
or ‘CabalHelper.Licenses.lookupInstalledPackageId’, 
defined at CabalHelper/Licenses.hs:38:1 

CabalHelper/Licenses.hs:74:10: error: 
Ambiguous occurrence ‘lookupInstalledPackageId’ 
It could refer to either ‘Distribution.Simple.PackageIndex.lookupInstalledPackageId’, 
imported from ‘Distribution.Simple.PackageIndex’ at CabalHelper/Licenses.hs:24:1-39 
or ‘CabalHelper.Licenses.lookupInstalledPackageId’, 
defined at CabalHelper/Licenses.hs:38:1 
ghc-mod: readCreateProcess: /Users/chris/.stack/snapshots/x86_64-osx/lts-6.15/7.10.3/libexec/cabal-helper-wrapper "--with-ghc=/usr/local/bin/ghc" "--with-ghc-pkg=/usr/local/bin/ghc-pkg" "--with-cabal=cabal" "/Users/chris/dev/formatter" "/Users/chris/dev/formatter/.stack-work/dist/x86_64-osx/Cabal-1.24.0.0" "package-db-stack" "entrypoints" "source-dirs" "ghc-options" "ghc-src-options" "ghc-pkg-options" "ghc-merged-pkg-options" "ghc-lang-options" "licenses" "flags" "config-flags" "non-default-config-flags" "compiler-version" (exit 1): failed 
+1

나는 이것이 재미 있지는 않지만, ['stack'] (https://docs.haskellstack.org/en/stable/README/)을 사용하는 것이 좋습니다. LTS 스냅 샷으로 도둑질을 벗어나기가 훨씬 쉬워졌습니다 ... – Alec

+0

작업 환경에 대해 좀 더 알려주십시오. 위에서 언급 한 첫 번째 스크립트의 경로 중 하나에서 ".stack"을 보았고 여러분이 * 이미 스택을 사용하고 있다고 가정했으나 (어쨌든 카발에 더하여) 잘못된 것일 수도 있습니다. –

+0

대다수의 물건을 스택으로 사용하고 있는데, 작동하지 않는 것 같아요. 도가 머리 도움말에 더 쉽게 도움이 될 것이라고 생각했습니다. 어쩌면 틀 렸습니다. 어쨌든, 실행했습니다. 스택에 ghc-mod를 설치하고 내 경로에 ~/.local/bin /을 추가했으나 대부분의 시간이 계속 오류가 발생합니다. –

답변

0

버전, 나는 최근에 스택 프로젝트에서 ghc 버전을 업데이 트하고 모든 것이 잘 작동합니다.