Como posso compilar um executável da GUI com o GHC?
Pergunta
Portuei um pequeno programa Haskell que escrevi do Mac para o Windows. É um aplicativo da GUI (Wxhaskell, compilado com o GHC 6.12.1), portanto, ele não precisa da janela de prompt de comando para abrir. De qualquer forma, isso faz isso, então minha pergunta: o que devo fazer para que o programa comece sem abrir uma janela rápida primeiro? Existe algum interruptor de GHC para isso?
Solução
Ao usar o wxwidgets com cygwin, você pode evitar que uma janela do console apareça por passando pelo -mwindows
Bandeira para o vinculador. Você pode dizer ao GHC para Passe as bandeiras para o vinculador usando o -optl
prefixo, então você pode tentar construir com -optl-mwindows
E veja se isso funciona.
Eu já fiz isso antes ao construir um aplicativo Haskell SDL no Windows e funcionou para mim. Eu acho que o -mwindows
Porém, a bandeira é específica da Cygwin, e não tenho certeza de qual a sua instalação do GHC pode estar usando como vinculador.
Outras dicas
Não tenho acesso ao GHC no Windows, mas parece que você precisa dizer ao Linker para usar o subsistema "Windows". ghc -optl-mwindows ...
pode funcionar.