
I am building a SDL binding on MacOS X (but the same problem should appears on Windows). It defines it's own main function in a libSDLmain.a.
But I can't get ghc not to generate a main when linking with -lSDLmain, which is the option that is indicated to get the main function that make SDL usable.
when I link write :
ghc -o test Main.hs libSDLmain.a , ghc doesn't generate a main as it can see there is a main in libSDLmain. And my test programs works.
but when I write
ghc -o test Main.hs -lSDLmain, ghc creates its own main, and it doesn't work.
Could you give more details? What is the error message? GHC doesn't generate main, there's a main function in libHSrts.a which is linked in last, so that you can override it with your own. You should probably use -no-hs-main, too, otherwise the linker will require that Main.main exists in the Haskell code. Cheers, Simon