2011-05-30 191 views
19

對於通用體系結構,可以使用Glasgow Haskell Compiler執行cross-compilation嗎?與GHC交叉編譯

如果不是,這個功能是否計劃在不久的將來開發?

+2

這是一個常見的問題,但一個很好的問題。我聽說過的GHC衍生物的唯一交叉彙編是HaLVM,否則答案是'等待或貢獻它',就像dons所說的那樣。 – 2011-05-30 02:52:52

回答

23

截至此刻(GHC 7.0)GHC不支持交叉編譯。

截至2013年,「支持交叉編譯在GHC 7.8.1中工作得相當好」。

請參閱CrossCompilation wiki頁面上的狀態。


討論

GHC一貫支持自交叉編譯(即你可以port GHC到一個新的體系結構)。然而,GHC作爲一個交叉編譯器,運行在主機上,但是產生了以另一個爲目標的二進制文件,但並未得到支持。

雖然GHC 7,但新的LLVM後端,工作is being undertaken添加交叉編譯支持。 狀態似乎爲from Mark Lentczner,「此時,我可以構建並鏈接並運行stage1交叉編譯器。」敬請關注GHC 7.2

+4

是否有博客文章或一些逐步編寫Haskell代碼的文章,然後交叉編譯以創建Windows,OSX,Linux,32位和64位二進制文​​件? – CMCDragonkai 2015-04-09 14:22:24

+0

@CMCDragonkai有一個新的維基頁面進一步的說明:https://ghc.haskell.org/trac/ghc/wiki/Building/CrossCompiling – amoebe 2016-02-25 18:53:29

+0

@amoebe我讀過之前,我不能讓頭或尾巴出來了。 – CMCDragonkai 2016-02-26 10:00:23