Pergunta

Recentemente, atualizei meu sistema operacional para Snow Leopard, que quebrou meu GHC. Consegui consertá -lo em uma máquina adicionando sinalizadores para compilações de 32 bits em/usr/bin/ghc (algo como -Optl -m32 -OPTA -M32 -Optc -M32, reunido de aqui). Agora não consigo fazer com que produza binários de 64 bits para minha outra máquina, que suporta 64 bits. As bandeiras de 32 bits quebram e removendo-as também. Alguma dica?

Quando tento compilar, recebo coisas assim:

/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

Obrigado!

Foi útil?

Solução

Os instaladores de leopardo de neve de 64 bits para a plataforma Haskell estão disponíveis, a partir de 2011.

Haskell Platform

Outras dicas

Meu entendimento é que, no momento, o GHC não pode gerar binários corretos de 64 bits sob o leopardo da neve. Isso parece ser em parte por causa de um bug na geração de links de 64 bits e em parte por causa de uma alteração na cadeia de ferramentas nativa. A solução alternativa que você menciona simplesmente diz para gerar um destino de 32 bits e, portanto, não fará parte de qualquer solução real para o seu problema.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top