[Haskell-cafe] cabal and ghc disagree on the name of the module Main
robin morisset
amulettevid at yahoo.fr
Tue Jul 6 19:18:36 EDT 2010
Hello,
I have the following directories set :
Project/
Project/Language
Project/Language/Copilot/
in Project there is the copilot.cabal file.
in Project/Language/Copilot there are a bunch of .hs files, including Main.hs
All the modules in these files are named Language.Copilot.NameOfTheFile for
cabal to work.
My issue happened when I chose to add a Main.hs, containing
Language.Copilot.Main and to try to compile it with ghc --make.
I got the error message "output was redirected with -o, but no output will be
generated because there is no Main module."
So I replaced Language.Copilot.Main by Main. ghc was happy, but cabal sent me
the following error message :
"File name does not match module name:
Saw: `Main'
Expected: `Language.Copilot.Main'"
So I finally kept the Language.Copilot.Main module name, and tried to use the
-main-is ghc option. The result was an unreadable linker error message :
"/usr/lib/ghc-6.12.1/libHSrtsmain.a(Main.o): In function `main':
(.text+0x10): undefined reference to `ZCMain_main_closure'
/usr/lib/ghc-6.12.1/libHSrtsmain.a(Main.o): In function `main':
(.text+0x18): undefined reference to `__stginit_ZCMain'
collect2: ld returned 1 exit status"
Does anyone know what this last message mean, and how to make both cabal and ghc
happy with my module name ?
Thank you in advance,
Robin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20100706/409e406c/attachment.html
More information about the Haskell-Cafe
mailing list