我喜欢用Haskell编写代码,但我经常在一台计算机上无法安装软件,而且它对您可以运行的内容有一些限制。我想编写Haskell代码并在这台计算机上测试它。有没有人知道Haskell的版本,解释的或编译的,用Java、JavaScript、Ruby、Python或其他解释语言编写的,在Mac的默认安装中可用?可以在用户级别安装的Haskell的独立版本也可以工作,但不能自己编译Haskell。
发布于 2012-09-07 20:50:31
GHC二进制发行版(以tarball的形式提供的发行版,而不是安装程序)都可以很容易地在本地安装。
./configure --prefix=$HOME/ghc
make install
然后更新您的路径以包含$HOME/ghc/bin
如果你想要bootstrap.sh,可以从hackage获取tarball,然后解压它并运行bootstrap.sh。
作为本地安装,GHC工作得非常好。事实上,我从来没有使用它作为系统安装。
发布于 2012-09-07 20:58:21
我也在我的工作站上这样做,这样我使用的发行版(在我的例子中就是Debian)不会在我没有注意到一个简单的apt-get upgrade
的情况下突然开始升级东西。
此解决方案安装完整的ghc
和haskell-platform
以及~/.cabal
前缀。
首先,我有一个~/local
目录,我使用它将定制编译的程序放在我的主目录中。我通常不喜欢sudo make install
这一步,因为我给系统提供了一些随机的Makefile
超级用户访问权限,这让我感到恶心。
然后,我从ghc site下载GHC二进制发行版。请注意,我已将您链接到7.4.2。我听说在Mac上有一些段错误错误,但我不知道细节。你应该检查一下,或者换成newer ghc,但要知道hackage上有很多包还没有修复到7.6。同样,忽略那个“停止!”警告,你是1%真正想要非distrib GHC二进制文件的人。
您可以只用cd进入ghc目录,然后执行./configure --prefix=$HOME/local/haskell
或更多命令,然后执行make install
(不需要编译,它只需要安装,而不是编译)。
此时,您应该将~/local/haskell/bin
添加到您的路径中。对我放在~/.zshrc
中的代码执行Here's操作,这会将所有~/local/*/bin
目录添加到您的路径中。
然后,您可以获得Haskell平台,并执行相同的./configure --prefix=$HOME/local/haskell && make && make install
舞蹈。这一步需要编译。这意味着你需要安装一些头库。我发现必要的随机openGL头特别烦人。
当然,你也可以跳过haskell-platform,直接下载cabal-install,然后安装你需要的东西。在任何情况下都不要忘记将~/.cabal/bin
添加到您的$PATH
中!
做一个cabal update
,你就可以开始工作了。
注意: GHC的二进制发行版需要一个重要的部分,在旧的Linux系统上,它有时可能是一个pita : libgmp。它是动态链接的,如果你得到一些关于在OS上找不到共享库的错误,你可以…那么,在评论中提出这个问题,我将解释如何做到这一点。基本上,你必须自己编译libgmp +dep。
但我不认为这在OS X上应该是个问题,只是在我试过的几个旧的debian机器上出现了问题。
发布于 2012-09-07 21:02:16
对于单个文件,您可以使用codepad。
https://stackoverflow.com/questions/12324982
复制