GHC for Snow Leopard的二进制文件?

我最近将操作系统升级为Snow Leopard,这打破了我的GHC。 我可以通过在/ usr / bin / ghc中添加用于32位编译的标志(类似于-optl -m32 -opta -m32 -optc -m32,从这里收集到)来修复它在一台机器上。 现在我无法为我的另一台支持64位的机器生成64位二进制文​​件。 32位标志会中断,并将它们删除。 有小费吗?

当我尝试编译时,我得到这样的东西:

/var/folders/az/az3Ef9shFZq6RajmTEBwu++++TI/-Tmp-//ghc8006_0/ghc8006_0.s:212:0:
32-bit absolute addressing is not supported for x86-64

/var/folders/az/az3Ef9shFZq6RajmTEBwu++++TI/-Tmp-//ghc8006_0/ghc8006_0.s:212:0:
cannot do signed 4 byte relocation

/var/folders/az/az3Ef9shFZq6RajmTEBwu++++TI/-Tmp-//ghc8006_0/ghc8006_0.s:215:0:
32-bit absolute addressing is not supported for x86-64

/var/folders/az/az3Ef9shFZq6RajmTEBwu++++TI/-Tmp-//ghc8006_0/ghc8006_0.s:215:0:
cannot do signed 4 byte relocation

谢谢!


截至2011年,64位Snow Leopard Haskell Platform安装程序已可用。

  • http://hackage.haskell.org/platform/mac.html

  • 我的理解是,目前ghc无法在Snow Leopard下生成正确的64位二进制文​​件。 这似乎部分是因为其64位链接生成中的一个错误,部分原因是由于本地工具链的更改。 你提到的解决方法只是告诉它产生一个32位的目标,因此不会成为你的问题的任何实际解决方案的一部分。

    链接地址: http://www.djcxy.com/p/867.html

    上一篇: bit binaries from GHC for Snow Leopard?

    下一篇: Why is `2 + x = 7` valid Haskell?