2011-11-05 14 views
9

Spesso ho situazioni in cui lascio le funzioni main :: IO() nei test. Posso eseguire questi fini con runghc, ma a volte voglio compilarli (ad esempio per l'esecuzione su un'altra piattaforma). C'è un modo per fare questo? Se corro, per esempio,haskell - come creare un binario da un modulo non principale?

ghc --make Test.Haar 

dove Test/Haar.hs ha un metodo main, poi non succede nulla, si crea solo il file .o.

+1

Non sono sicuro che sia quello che stai cercando, ma controlla l'opzione -main-is (docs su http://www.haskell.org/ghc/docs/7.2.1/html/users_guide/options -phases.html) –

risposta

13
ghc --make -main-is Test.Haar Test.Haar 
4

Si noti, tuttavia, che dopo aver usato -main-is Test.Haar, se si desidera utilizzare il modulo come parte di un altro programma, è necessario ricompilare senza il -main-is, in caso contrario il linker trovare due punti di entrata e lanciare un errore.

Problemi correlati