2013-10-13 12 views
7

Tôi có LLVM/opt-3.2 được cài đặt cùng với llvm-3.2.0.2 và tôi vừa cài đặt GHC 7.6.2 từ gói Ubuntu. Tuy nhiên, khi tôi cố gắng biên dịch GHC với -v3 -fllvm, tôi nhận được lỗi:Sử dụng GHC với LLVM 3.2

*** CodeGen: 
*** LlVM CodeGen: 
Error (figuring out LLVM version): fd:10: hGetLine: end of file 

<no location info>: 
    Warning: Couldn't figure out LLVM version! 
      Make sure you have installed LLVM 
*** LLVM Optimiser: 
'opt-3.0' '/tmp/ghc17812_0/ghc17812_0.ll' '-o' '/tmp/ghc17812_0/ghc17812_0.bc' '-mem2reg' '--enable-tbaa=true' 
*** Deleting temp files: 
... 
ghc: could not execute: opt-3.0 

opt là con đường của tôi, nhưng phiên bản là 3.2, không 3.0. Nếu nó không phải là gói phần mềm hackvv mà làm cho GHC tìm kiếm phiên bản thích hợp của lựa chọn, nó là gì?

Trả lời

5

Dường như có hai ghc-trac phù hợp với điều này: onetwo.

Trong lần truy cập thứ hai, người dùng đã đề cập đến các tùy chọn "-pgmlo" và "-pgmlc", có thể được tìm thấy here.

Tôi đã có thể khắc phục sự cố của mình bằng cách thêm "-pgmlo opt -pgmlc llc" vào danh sách tùy chọn GHC.

Là một thay thế, bạn có thể chỉnh sửa /usr/lib/ghc/settings và chắc chắn rằng nó có những dòng sau:

("LLVM llc command", "llc"), 
("LLVM opt command", "opt") 

Tôi vẫn muốn biết tại sao GHC cố gắng tìm opt-3.0 theo mặc định.

6

Chỉ muốn nhận xét rằng đây vẫn là một điều. Hướng dẫn cho OSX:

> brew tap homebrew/dupes 
> brew install homebrew/versions/llvm34 

Và giữ một bí danh trong .bashrc tôi:

alias ghc-llvm="ghc -O2 -fllvm -pgmlo opt-3.4 -pgmlc llc-3.4" 

Hãy chắc chắn rằng bạn sẽ có được llvm34khôngllvm35. Tôi cũng thấy rằng bạn thực sự muốn vượt qua -O2 với LLVM. Không có nó là rất chậm.

+0

Điều gì thực sự có ý nghĩa bằng cách gắn thêm thứ gì đó vào .bashrc của bạn và phiên bản OS X nào? –

+1

Tìm hiểu xem bạn đang sử dụng trình bao nào bằng cách chạy ps rồi đọc trang người đàn ông cho vỏ đó để tìm hiểu kịch bản nào chạy khi khởi động. Đối với hầu hết, shell là bash và nó chạy $ HOME/.bashrc và một số kịch bản khác mà bạn có thể sử dụng để tùy chỉnh trải nghiệm của mình. –

+0

Cảm ơn. Theo tôi biết điều đó đúng, nhưng vấn đề thực tế của tôi là: https://stackoverflow.com/questions/24796874/cant-install-diagrams-arithmoi-on-mac –

Các vấn đề liên quan