Haskell:在没有必要库的新平台上编译

时间:2012-10-08 19:37:18

标签: haskell ghc

以下是该场景:我正在使用我的OSX机器上的Parsec库进行项目。我安装了Haskell平台,并拥有所有必需的软件包。现在,在我的linux / CentOS服务器上,我安装了ghc,但没有安装Haskell平台,Cabal或必要的软件包(在本例中为Parsec)。因为用户限制,我无法安装这些软件包,但我可以访问ghc。所以我的问题变成:有没有办法在OSX机器上“半编译”(我确定的可怕选择)我的项目,以便它将所有必要的Haskell代码包含到单个.hs文件中(特别是导入的)包)?或者一种简单的方法将我正在使用的包导入/复制到我的本地文件目录中,所以我可以简单地上传和编译?基本上是一种将必要的文件和包捆绑到一个准备编译的独立源中的方法。我仍然是Haskell的新手,请原谅我,如果这是一项微不足道的任务。

2 个答案:

答案 0 :(得分:2)

您最好的选择可能是在主目录中的某处本地安装Haskell平台。由于HP版本与特定的GHC版本相关联,这意味着您可能也需要自己安装GHC。

Here's a great step-by-step guide for how to do this.您可以获得required GHC binary tarballs here

一旦你有了它,你可以使用Cabal安装你需要的任何其他包。

答案 1 :(得分:1)

here获取cabal来源。您可以构建并将其安装到用户主目录。然后将其放在PATH上并使用它在用户主目录中安装所需的依赖项。然后你可以编译你的代码。

请注意,您可以使用cabal选项将--prefix和依赖项安装到您有权访问的任何目录。