|
|
Line 2: |
Line 2: |
| | | |
| See [[WxHaskell#Documentation]] for up to date instructions | | See [[WxHaskell#Documentation]] for up to date instructions |
− |
| |
− |
| |
− | === Building wxHaskell ===
| |
− |
| |
− | For all platforms installation is straightforward, provided that:
| |
− | # wx-config is somewhere in the path
| |
− | # The WXWIN environment variable points to the root of your wxWidgets installation
| |
− | # WINDOWS PLATFORMS ONLY: You may also need to set WXCFG=gcc_dll\mswu
| |
− |
| |
− | You can then install wxhaskell as follows (''in a Windows cmd.exe shell, not an MSys shell''):
| |
− |
| |
− | > cabal update
| |
− | > cabal install wx
| |
− |
| |
− | Note that on Windows 7 machines, your command window must be running as Administrator, or you must use the '--user' flag to install to a local directory.
| |
− |
| |
− | Note that on Unix systems, you may prefer something like
| |
− |
| |
− | > sudo cabal install --global wx
| |
− |
| |
− | Windows developers who don't update environment variables can do something like this in an MS-DOS shell:
| |
− |
| |
− | > Set CPLUS_INCLUDE_PATH=C:\MinGW\include\c++\3.4.5;C:\MinGW\include\c++\3.4.5\mingw32\
| |
− | > Set WXWIN=C:\path\to\wxWidgets-2.9.3
| |
− | > Set WXCFG=gcc_dll\mswu
| |
− | > cabal install wx
| |
− |
| |
− | The Windows installation is global by default.
| |
− |
| |
− | ==== Out of memory errors ====
| |
− |
| |
− | There have been reports of out of memory errors when compiling wxcore on some machines, notably 64 bit Linux hosts. Wxcore contains some very large auto-generated source files, and increasing the memory available to the GHC runtime can help.
| |
− |
| |
− | Try something like:
| |
− |
| |
− | > export GHCRTS='-M512m'
| |
− |
| |
− | to allocate 512 MB to the GHC RTS. This has been reported to be sufficient.
| |
− |
| |
− | ==== Failure to build Strict ====
| |
− | There have been reports of the following error when building wxHaskell on Windows (as of 24/4/2012):
| |
− |
| |
− | C:\>cabal install wxdirect
| |
− | Resolving dependencies...
| |
− | Configuring strict-0.3.2...
| |
− | Preprocessing library strict-0.3.2...
| |
− | Building strict-0.3.2...
| |
− |
| |
− | <interno>:0:5: lexical error (UTF-8 decoding error)
| |
− | cabal: Error: some packages failed to install:
| |
− | strict-0.3.2 failed during the building phase. The exception was:
| |
− | ExitFailure 1
| |
− | wxdirect-0.90.0.1 depends on strict-0.3.2 which failed to install.
| |
− |
| |
− | The suggested fix is:
| |
− |
| |
− | set LANG=C
| |
− |
| |
− | on the command line before you build. This appears to be a UTF error in the strict library. Configuring this will not stop you from configuring working Unicode support for wxHaskell, as wxDirect is only used for parsing C language header files.
| |
− |
| |
− | === Source Release ===
| |
− |
| |
− | You can obtain a source release of wxHaskell from the [http://code.haskell.org/wxhaskell/ darcs repository]. Darcs creates a <tt>wxHaskell</tt> directory for you; we assume in the following example that your <tt>$wxHaskell</tt> directory will be <tt>~/dev/wxhaskell</tt>.
| |
− |
| |
− | <pre>> cd ~/dev
| |
− | > darcs get --lazy --set-scripts-executable http://code.haskell.org/wxhaskell/</pre>
| |
− |
| |
− | If you are building on Windows, you will need the version of wx-config which is
| |
− | included in the wx-config-win directory. You should put this somewhere in your path.
| |
− |
| |
− | You then build each of the key components in order:
| |
− |
| |
− | > cd ~/dev/wxhaskell/wxdirect
| |
− | > cabal install --user
| |
− | > cd ../wxc
| |
− | > cabal install --user
| |
− | > cd ../wxcore
| |
− | > cabal install --user
| |
− | > cd ../wx
| |
− | > cabal install --user
| |
− |
| |
− | === Test wxHaskell ===
| |
− |
| |
− | If everything succeeded, you should be able to run a test program.
| |
− |
| |
− | <pre>> cd samples/wx
| |
− | > ghc -package wx -o helloworld HelloWorld.hs
| |
− | > ./helloworld</pre>
| |
− | Notes:
| |
− |
| |
− | '''macosx''': wxHaskell programs need to be turned into application bundles before they can be run. Look at the Mac OS X [[WxHaskell/Building_on_MacOS_X|notes]] for more information.
| |
− | You can also run the examples from GHCi – a great development environment!
| |
− |
| |
− | <pre>> ghci -package wx BouncingBalls.hs
| |
− | > main</pre>
| |
− | Notes:
| |
− |
| |
− | wxHaskell programs can be run from GHCi. There are reports that this is now working correctly, at least for Windows and OSX platforms.
| |
− |
| |
− | '''gtk''': Unfortunately, one can only start a wxWidgets program once with GHCi on GTK (rendering it useless).
| |
− | '''macosx'''. You need to use a special command to run wxHaskell applications, see the Mac OS X [[WxHaskell/Mac|notes]] from more information.
| |
− | Have fun!<br />
| |
− |
| |
− | [[Category:wxHaskell|Building]]
| |