[GHC] #8792: apple does not supply lllvm i.e. opt and llc

#8792: apple does not supply lllvm i.e. opt and llc ------------------------------------+-------------------------------------- Reporter: George | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.8.1 Component: Documentation | Version: 7.8.1-rc1 Keywords: | Operating System: MacOS X Architecture: Unknown/Multiple | Type of failure: Documentation bug Difficulty: Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | ------------------------------------+-------------------------------------- -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8792 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8792: apple does not supply lllvm i.e. opt and llc --------------------------------------+------------------------------------ Reporter: George | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.8.1 Component: Documentation | Version: 7.8.1-rc1 Resolution: | Keywords: Operating System: MacOS X | Architecture: Unknown/Multiple Type of failure: Documentation bug | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: --------------------------------------+------------------------------------ Comment (by George): From ghc-7.8.20140130/docs/users_guide/users_guide/code-generators.html #llvm-code-gen: To install LLVM and Clang: ... Mac OS X: LLVM and Clang are included by default from 10.6 and later. Apple does not include LLVM (opt and llc are what is needed) by default. They needed to be installed by homebrew or an alternative system. We may want to document that llvm 3.4 is the preferred version. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8792#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8792: apple does not supply lllvm i.e. opt and llc -------------------------------------+------------------------------------- Reporter: George | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.8.1 Component: Documentation | Version: 7.8.1-rc1 Resolution: | Keywords: Operating System: MacOS X | Architecture: Unknown/Multiple Type of failure: Documentation | Difficulty: Easy (less than 1 bug | hour) Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------- Changes (by George): * difficulty: Unknown => Easy (less than 1 hour) -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8792#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8792: apple does not supply lllvm i.e. opt and llc -------------------------------------+------------------------------------- Reporter: George | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.8.1 Component: Documentation | Version: 7.8.1-rc1 Resolution: | Keywords: Operating System: MacOS X | Architecture: Unknown/Multiple Type of failure: Documentation | Difficulty: Easy (less than 1 bug | hour) Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------- Comment (by schyler): I thought I'd throw in a note that something naive like "brew install llvm" doesn't actually install the command line tools llc/opt. I haven't actually figured out how to do so using brew. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8792#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8792: apple does not supply lllvm i.e. opt and llc -------------------------------------+------------------------------------- Reporter: George | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.8.1 Component: Documentation | Version: 7.8.1-rc1 Resolution: | Keywords: Operating System: MacOS X | Architecture: Unknown/Multiple Type of failure: Documentation | Difficulty: Easy (less than 1 bug | hour) Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------- Comment (by George): That's strange, brew install llvm does give me llc and opt. The point of my ticket is that Apple does not supply them so the doc is wrong in that regards. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8792#comment:4 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8792: apple does not supply lllvm i.e. opt and llc -------------------------------------+------------------------------------- Reporter: George | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.8.1 Component: Documentation | Version: 7.8.1-rc1 Resolution: | Keywords: Operating System: MacOS X | Architecture: Unknown/Multiple Type of failure: Documentation | Difficulty: Easy (less than 1 bug | hour) Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------- Comment (by carter): @schyler: yes it dees install them. You just need to make sure you brew linked em and that the ghc settings file points to that version / name variant of the opt and LLC commands. I suspect you just didn't check that. Ghc is not going to be bundled with llvm in the next year. If the ghc user can't install llvm on their machine, they shouldn't use it. That said, Suggestion of the ticket is valid in premise but not in details. For example, ghc iOS needs llvm 3.0 George: where in the docs is the current information you're referring to? -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8792#comment:5 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8792: apple does not supply lllvm i.e. opt and llc -------------------------------------+------------------------------------- Reporter: George | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.8.1 Component: Documentation | Version: 7.8.1-rc1 Resolution: | Keywords: Operating System: MacOS X | Architecture: Unknown/Multiple Type of failure: Documentation | Difficulty: Easy (less than 1 bug | hour) Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------- Comment (by George): As I said in my first sentence doc location is ../ghc-7.8.20140130/docs/users_guide/users_guide/code-generators.html #llvm-code-gen I don't understand why the details are not valid, I don't talk about iOS just Mac OS X. The doc refers to OS X and is wrong wrt LLVM, correct? When I said llvm 3.4 is the preferred version I meant for MAC OS X and I believe for Windows and Linux which is what this section of the document refers to. I should have written I believe llvm 3.4 is the preferred version for Mac OS X ... Additionally for Mac OS X it should mention that Clang is available from Apple not supplied by default, correct? However you have a good point about llvm 3.0 being the preferred version for 3.0. Thanks for bringing that up, definitely needs to be documented. Is the problem with 3.4 on the llvm side or the Haskell side? Are there other OS that require an earlier version of llvm? -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8792#comment:6 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8792: Mac OS X does not supply lllvm i.e. opt and llc -------------------------------------+------------------------------------- Reporter: George | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.8.1 Component: Documentation | Version: 7.8.1-rc1 Resolution: | Keywords: Operating System: MacOS X | Architecture: Unknown/Multiple Type of failure: Documentation | Difficulty: Easy (less than 1 bug | hour) Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------- -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8792#comment:7 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8792: Mac OS X does not supply lllvm i.e. opt and llc -------------------------------------+------------------------------------- Reporter: George | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.8.1 Component: Documentation | Version: 7.8.1-rc1 Resolution: | Keywords: Operating System: MacOS X | Architecture: Unknown/Multiple Type of failure: Documentation | Difficulty: Easy (less than 1 bug | hour) Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------- Comment (by carter): {{{ You must install and have LLVM available on your PATH for the LLVM code generator to work. Specifically GHC needs to be able to call the optand llc tools. Secondly, if you are running Mac OS X with LLVM 3.0 or greater then you also need the Clang c compiler compiler available on your PATH. Clang and LLVM are both included with OS X by default from 10.6 onwards. To install LLVM and Clang: Linux: Use your package management tool. Mac OS X: LLVM and Clang are included by default from 10.6 and later. For 10.5 you should install the Homebrew package manager for OS X. Alternatively you can download binaries for LLVM and Clang from here. Windows: You should download binaries for LLVM and clang from here. }}} from http://www.haskell.org/ghc/docs/7.8.1-rc1/html/users_guide/code- generators.html#llvm-code-gen ok, so the issue is that the direction for OS X are wrong. It was hard to parse you ticket :) -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8792#comment:8 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8792: Mac OS X does not supply lllvm i.e. opt and llc -------------------------------------+------------------------------------- Reporter: George | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.8.1 Component: Documentation | Version: 7.8.1-rc1 Resolution: | Keywords: Operating System: MacOS X | Architecture: Unknown/Multiple Type of failure: Documentation | Difficulty: Easy (less than 1 bug | hour) Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------- Comment (by carter): so we should more clearly say "clang is provided on recent OS X, but to use the LLVM backend, you will need to install LLVM, such as by having the homebrew package manager and invoking {{{ brew install llvm }}}" -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8792#comment:9 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

{{{
You must install and have LLVM available on your PATH for the LLVM code generator to work. Specifically GHC needs to be able to call the optand llc tools. Secondly, if you are running Mac OS X with LLVM 3.0 or greater
#8792: Mac OS X does not supply lllvm i.e. opt and llc -------------------------------------+------------------------------------- Reporter: George | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.8.1 Component: Documentation | Version: 7.8.1-rc1 Resolution: | Keywords: Operating System: MacOS X | Architecture: Unknown/Multiple Type of failure: Documentation | Difficulty: Easy (less than 1 bug | hour) Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------- Comment (by George): Replying to [comment:8 carter]: then you also need the Clang c compiler compiler available on your PATH. Clang and LLVM are both included with OS X by default from 10.6 onwards.
To install LLVM and Clang:
Linux: Use your package management tool. Mac OS X: LLVM and Clang are included by default from 10.6 and later.
For 10.5 you should install the Homebrew package manager for OS X. Alternatively you can download binaries for LLVM and Clang from here.
Windows: You should download binaries for LLVM and clang from here.
}}}
from http://www.haskell.org/ghc/docs/7.8.1-rc1/html/users_guide/code- generators.html#llvm-code-gen
ok, so the issue is that the direction for OS X are wrong.
It was hard to parse you ticket :) Yes, sorry about that.
-- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8792#comment:10 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8792: Mac OS X does not supply lllvm i.e. opt and llc -------------------------------------+------------------------------------- Reporter: George | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.8.1 Component: Documentation | Version: 7.8.1-rc1 Resolution: | Keywords: Operating System: MacOS X | Architecture: Unknown/Multiple Type of failure: Documentation | Difficulty: Easy (less than 1 bug | hour) Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------- Comment (by George): Replying to [comment:9 carter]:
so we should more clearly say "clang is provided on recent OS X, but to use the LLVM backend, you will need to install LLVM, such as by having the homebrew package manager and invoking {{{ brew install llvm }}}"
Sounds good, thanks -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8792#comment:11 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8792: doc incorrect: Mac OS X does not supply lllvm i.e. opt and llc -------------------------------------+------------------------------------- Reporter: George | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.8.1 Component: Documentation | Version: 7.8.1-rc1 Resolution: | Keywords: Operating System: MacOS X | Architecture: Unknown/Multiple Type of failure: Documentation | Difficulty: Easy (less than 1 bug | hour) Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------- -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8792#comment:12 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8792: doc incorrect: Mac OS X does not supply lllvm i.e. opt and llc
-------------------------------------+-------------------------------------
Reporter: George | Owner:
Type: bug | Status: new
Priority: normal | Milestone: 7.8.1
Component: Documentation | Version: 7.8.1-rc1
Resolution: | Keywords:
Operating System: MacOS X | Architecture: Unknown/Multiple
Type of failure: Documentation | Difficulty: Easy (less than 1
bug | hour)
Test Case: | Blocked By:
Blocking: | Related Tickets:
-------------------------------------+-------------------------------------
Comment (by Austin Seipp

#8792: doc incorrect: Mac OS X does not supply lllvm i.e. opt and llc -------------------------------------+------------------------------------- Reporter: George | Owner: Type: bug | Status: merge Priority: normal | Milestone: 7.8.1 Component: Documentation | Version: 7.8.1-rc1 Resolution: | Keywords: Operating System: MacOS X | Architecture: Unknown/Multiple Type of failure: Documentation | Difficulty: Easy (less than 1 bug | hour) Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------- Changes (by thoughtpolice): * status: new => merge -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8792#comment:14 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8792: doc incorrect: Mac OS X does not supply lllvm i.e. opt and llc -------------------------------------+------------------------------------- Reporter: George | Owner: Type: bug | Status: closed Priority: normal | Milestone: 7.8.1 Component: Documentation | Version: 7.8.1-rc1 Resolution: fixed | Keywords: Operating System: MacOS X | Architecture: Unknown/Multiple Type of failure: Documentation | Difficulty: Easy (less than 1 bug | hour) Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------- Changes (by thoughtpolice): * status: merge => closed * resolution: => fixed Comment: Merged in a1e57a0fb1979aeec191c35d96e9b98c03be6c47 -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8792#comment:15 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler
participants (1)
-
GHC