GHC under Wine: Difference between revisions
(update known problems) |
(Known issues - add note about MSYS) |
||
Line 1: | Line 1: | ||
[[Category:GHC| | [[Category:GHC|Wine]] | ||
[[GHC]] runs | [[GHC]] runs flawlessly under Wine. Here's a guide on how to get it working. | ||
==Installation== | ==Installation== | ||
First, get the latest version of Wine from http://www.winehq.com/site/download | First, get the latest version of Wine from http://www.winehq.com/site/download | ||
Next, grab the latest [[windows]] version of GHC from http://haskell.org/ghc/download.html | Next, grab the latest [[windows]] version of GHC from http://haskell.org/ghc/download.html | ||
Line 13: | Line 13: | ||
Create a simple haskell program to compile. Hello World examples are good. Try compiling it:<br/> | Create a simple haskell program to compile. Hello World examples are good. Try compiling it:<br/> | ||
<code><pre>$ wine ghc | <code><pre>$ WINEDEBUG=-all wine ghc --make hello.hs | ||
[1 of 1] Compiling Main ( hello.hs, hello.o ) | |||
Compiling Main ( | |||
Linking ... | Linking ... | ||
</pre></code> | </pre></code> | ||
<code><pre>$ wine hello | <code><pre>$ wine hello | ||
Hello, world! | Hello, world! | ||
</pre></code> | |||
If it all works well then you should be able to compile your Haskell programs for windows with GHC on Wine. | If it all works well then you should be able to compile your Haskell programs for windows with GHC on Wine. | ||
Line 34: | Line 29: | ||
== Known problems == | == Known problems == | ||
* removeDirectoryRecursive did not work correctly prior to wine-1.1.4-538-g2e8dec4. This most notably broke cabal install. | * MSYS does not integrate with MinGW correctly - [[http://bugs.winehq.org/show_bug.cgi?id=15949 See Wine bug 15949]] | ||
* removeDirectoryRecursive did not work correctly prior to wine-1.1.4-538-g2e8dec4. This most notably broke cabal install. '''Use Wine 1.1.5 or newer.''' | |||
===Native DLLs=== | ===Native DLLs=== |
Revision as of 11:52, 8 November 2008
GHC runs flawlessly under Wine. Here's a guide on how to get it working.
Installation
First, get the latest version of Wine from http://www.winehq.com/site/download
Next, grab the latest windows version of GHC from http://haskell.org/ghc/download.html
installing ghc is as simple as typing: wine ghc-6.8.2-i386-unknown-mingw32.exe
Once this is all done, you should be good to start using GHC.
Testing
Create a simple haskell program to compile. Hello World examples are good. Try compiling it:
$ WINEDEBUG=-all wine ghc --make hello.hs
[1 of 1] Compiling Main ( hello.hs, hello.o )
Linking ...
$ wine hello
Hello, world!
If it all works well then you should be able to compile your Haskell programs for windows with GHC on Wine.
If you encounter specific, reproducible issues that are present in the latest release of wine you should file a bug report with the Wine project http://bugs.winehq.org (so long as one doesn't already exist for the issue)
Known problems
- MSYS does not integrate with MinGW correctly - [See Wine bug 15949]
- removeDirectoryRecursive did not work correctly prior to wine-1.1.4-538-g2e8dec4. This most notably broke cabal install. Use Wine 1.1.5 or newer.
Native DLLs
Wine isn't perfect (yet) but does offer a solution for using native dlls, as an alternative to builtin dlls if certain functions are not implemented or are buggy and not yet fixed. To configure this use winecfg where you can specify settings for the ordering of preferences for loading dlls, Builtin only, Native only, Builtin then Native and Native then Builtin.
winetricks can be useful for installing common native dlls or software
Debugging
You can enable tracing of various components within Wine to aid in debugging issues with Wine by using [Wine Debug Channels].