2017-09-29 13 views
1

haskell stack을 설치했으며 동일한 ghc를 설정하려고합니다.설치 중에 ghc-sanity 점검 오류가 발생했습니다. Opensuse에서 haskell 스택에 대해 42.3

> stack setup 
The GHC located at /home/user/.stack/programs/x86_64-linux/ghc-tinfo6-8.2.1/bin/ghc failed to compile a sanity check. Please see: 

http://docs.haskellstack.org/en/stable/install_and_upgrade/ 

for more information. Exception was: 
Running /home/user/.stack/programs/x86_64-linux/ghc-tinfo6-8.2.1/bin/ghc /tmp/stack-sanity-check6389/Main.hs -no-user-package-db in directory /tmp/stack-sanity-check6389/ exited with ExitFailure 1 

[1 of 1] Compiling Main    (/tmp/stack-sanity-check6389/Main.hs, /tmp/stack-sanity-check6389/Main.o) 
Linking /tmp/stack-sanity-check6389/Main ... 

/usr/bin/ld.bfd: cannot find -lgmp 
collect2: error: ld returned 1 exit status 
`gcc' failed in phase `Linker'. (Exit code: 1) 
- 스택 버전은 내가 그럼 난 stack setup 명령을 실행

# This is the implicit global project's config file, which is only used when 
# 'stack' is run outside of a real project. Settings here do _not_ act as 
# defaults for all projects. To change stack's default settings, edit 
# '/home/rajkumar/.stack/config.yaml' instead. 
# 
# For more information about stack's configuration, see 
# http://docs.haskellstack.org/en/stable/yaml_configuration/ 
# 
flags: {} 
extra-package-dbs: [] 
packages: [] 
extra-deps: [] 
resolver: ghc-8.2.1 

아래로 ~/.stack/글로벌 프로젝트/stack.yaml를 업데이트하고 아래의 오류를 가지고있다

stack --version 
Version 1.5.1, Git revision 600c1f01435a10d127938709556c1682ecfd694e (4861 commits) x86_64 hpack-0.17.1 

입니다

이 문제를 어떻게 해결할 수 있습니까?

+0

스택은 어떻게 설치 되었습니까? https://docs.haskellstack.org/en/stable/README/를 통해 설치하는 경우 libgmp가 설치되어야합니다. opensuse에 설치하는 방법을 모르지만 libgmp를 설치하면 제대로 작동합니다. 참고 스택 문제 추적기를 검색하여 이것을 알아 냈습니다. https://github.com/commercialhaskell/stack/issues/3069 https://github.com/commercialhaskell/stack/search?q=lgmp&type=Issues&utf8= % E2 % 9C % 93 – mgsloan

+0

mgsloan - 'curl -sSL https://get.haskellstack.org/'명령을 사용하여 설치했습니다. sh'. 나는이 문서를 따라 갔다. https://docs.haskellstack.org/en/stable/README/#how-to-install –

답변

0

이 오류를 해결할 수 있습니다.

gmp가 opensuse linux에 이미 설치되어 있는지 확인하려면 아래 명령을 사용하십시오.

sudo ldconfig -p | grep libgmp 
libgmp.so.10 (libc6,x86-64) => /usr/lib64/libgmp.so.10 

sudo zypper install libgmp10 

하는 동일한 폴더에 lib 디렉토리 파일에 대한 링크를 생성 명령 아래 사용하여 설치 존재하지 않는 경우. 예

sudo ln /usr/lib64/libgmp.so.10 /usr/lib64/libgmp.so 

희망이 있으면 도움이 될 것입니다.