2012-06-11 9 views
6

Ich verwende die Standard-Installation der Haskell-Plattform unter Ubuntu und wenn ich dieses Beispiel starte http://www.haskell.org/haskellwiki/Calling_Haskell_from_C erzeugt "ghc -c-O Safe.hs" nicht die Safe_stub.o-Datei . Ich habe dies auf einer separaten Installation von Ubuntu auf einer Freundesbox und auf 32 Bit und 64 Bit Ubuntu Installationen überprüft.ghc 7.4.1 stub.o-Dateien werden nicht erzeugt

Kann jemand bestätigen, ob dies nur für ghc-7.4.1 oder Ubuntu installiert ist?

Danke!

Antwort

11

Es ist ein ghc-7.4 (eigentlich ghc >= 7.2) Sache. Das benötigt und produziert keine *_stub.o (oder *_stub.c) Dateien mehr. Allerdings hat die Befehlszeile für die endgültige Zusammenstellung zu ändern

$ ghc -no-hs-main -optc-O test.c Safe.o -o test 

Sie haben GHC zu sagen, dass die main kein Haskell Anruf ist.

+1

Gut zu wissen, ich war auf #haskell irc und ein Benutzer sagte, dass es immer noch in den Spezifikationen war und dass der Stub möglicherweise gerade umgeleitet wurde. Danke, wenn ich dazu komme, werde ich das Haskell-Wiki aktualisieren, um dies zu reflektieren. –