2011-11-05 12 views
9

Często mam sytuacje, w których zostawiam funkcje main :: IO() w testach. Mogę uruchomić to dobrze z runghc, ale czasami chcę je skompilować (np. Do działania na innej platformie). Czy jest jakiś sposób na zrobienie tego? Jeśli biegnę na przykładhaskell - jak utworzyć plik binarny z modułu innego niż Główny?

ghc --make Test.Haar 

gdzie Test/Haar.hs ma metodę main, to nic się nie dzieje, to po prostu tworzy plik .o.

+1

Nie jestem pewien, czy to jest to, czego szukasz, ale sprawdź opcję -main-is (dokumenty na http://www.haskell.org/ghc/docs/7.2.1/html/users_guide/options -phases.html) –

Odpowiedz

4

Należy jednak pamiętać, że po użyciu -main-is Test.Haar, jeśli chcesz użyć modułu jako część innego programu, trzeba przekompilować go bez -main-is, inaczej łącznik znajdziemy dwa wejścia-punkty i rzucać błąd.

Powiązane problemy