假设我想使用不同版本的GHC,每个版本都有不同的二进制名称。
问题1.我是否可以为每个安装使用./configure --prefix = ghc-some-version-dir,并创建符号链接ghc-7.4.1
,ghc-7.6.2
,ghc-head
问题?
即从源代码安装和创建二进制文件之后。构建项目及其依赖项仍然需要使用虚拟环境。
问题2.什么阻止我们将ghc上传到Hackage,其包名ghc-version
的二进制名称取决于其版本?例如一个人可以cabal install ghc-version-7.6.2
并在〜/ .cabal / bin
ghc-7.6.2
答案 0 :(得分:11)
你不需要做任何特别的事情。 GHC已经安装了所有可执行文件,其版本名称和链接从非版本名称到最近安装的版本,例如从“ghc”到“ghc-7.6.1”的链接或者你最后安装的任何内容。从存储库构建时,版本号很长,包括构建它的日期。
我不确定为什么GHC没有使用Hackage,但我认为这是因为构建系统非常复杂,而且它的组合(以及保持联系)会比它的价值更多。
答案 1 :(得分:3)
有几种解决方法
-w
标志,阅读他的评论:https://plus.google.com/u/0/100165496075034135269/posts/VU9FupRvRbU