2016-12-11 9 views
0

하스켈을 배우기 시작했는데 ghc은 LLVM을 사용하여 -fllvm 플래그로 컴파일 할 수 있다는 것을 알게되었습니다. 내가 깃발을 사용할 때마다, 나는 오류 메시지 :ghc를 llvm으로 컴파일

<no location info>: error: 
Warning: Couldn't figure out LLVM version! 
     Make sure you have installed LLVM 3.7 
ghc: could not execute: opt 

그러나, 나는 내 /usr/local/Cellar/llvm/3.9.0/ 폴더에 opt 있습니다. Mac OS X에서 brew install llvm으로 전체 LLVM을 설치했지만 오류가 계속 발생합니다. LLVM을 제거하고 3.7 버전을 다시 설치해야하는 정품 버전 문제입니까? 또는 을 찾는 데 문제가있는 ghc이 있으며 문제를 해결하기 위해 수정할 수있는 검색 경로가 있습니까? 도움을 주셔서 감사 드리며 좋은 하루 보내십시오.

+6

IIRC GHC 사용 LLVM의 버전에 대한 매우 민감한 (또는 최소한으로 사용), 당신은 3.7를 설치해야 할 수 있도록. 문제는 LLVM이 기능을 깨는 꽤 자주 릴리스되는주기입니다. GHC를이 버전들과 함께 사용하는 것은 고통 스럽습니다. 자세한 내용은 [이 페이지] (https://ghc.haskell.org/trac/ghc/wiki/ImprovedLLVMBackend)를 참조하십시오. – Alec

답변

0

GHC documentation은 llvm-2.8 +와 호환되지만 실제로는 llvm-3.7이 필요하다는 것을 알았습니다.

가장 간단한 방법은 그것이 얻을 :

brew install [email protected]

clang-3.7처럼 -3.7 접미사 경로에 LLVM 바이너리를 설치합니다. GHC는 하위 디렉토리에있는 꾸밈 이름을해야합니다

export PATH=/usr/local/opt/[email protected]/lib/llvm-3.7/bin:$PATH