在Mac OS X上确定安装的Haskell是64位还是32位?

6

请问如何确定我在OS X上使用的是64位还是32位的Glasgow Haskell Compiler (GHC)?我已经安装了32位和64位版本,但不知道current指向哪个版本。

pwd
/Library/Haskell   
⚡ ll
bin -> current/bin
current -> ghc-7.4.2
doc -> current/doc
ghc-7.0.3 
ghc-7.4.2

此外...
⚡ ghc --version
The Glorious Glasgow Haskell Compilation System, version 7.4.2

这并不包含我所需要的信息。

顺便提一下,我正在运行OS X 10.7.5版本的Intel Core i5上,因此我可以运行但我正在尝试启动yesod...

64位GHC 7.4的Mac版存在一个错误,导致yesod devel无法正确工作。该错误已在7.6中得到纠正。但是,由于7.4仍然是开发的推荐平台,建议安装32位版本的GHC。

3个回答

13

尝试运行ghc --info,它应该列出目标架构。

一种更通用的解决方案是追踪符号链接和实际GHC二进制文件的脚本,然后在其上运行file


是的,不错 @shachaf。谢谢! - djb

4

在ghci中输入maxBound :: Int


0

1) 我本以为 "compiler --version" 会告诉你的。我很惊讶 "ghc --version" 没有 :(

2) 另一个选项可能是尝试内置的 Haskell "showVersion" - 那可能会告诉你。

3) 一个“确定”的方法是使用 *nix 的 "file" 命令:

file ghc <= 这应该绝对能告诉你 ghc 是 32 位还是 64 位可执行文件


不幸的是,这只告诉你 GHC 是一个 shell 脚本(至少在这里是这样)。你必须阅读脚本并找出实际可执行文件的位置(在我的情况下是 /usr/local/lib/ghc-7.6.1/ghc)。 - shachaf

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接