fltkhs-0.5.1.1: README.md
Fltkhs - A Haskell Binding to the FLTK GUI Library
=============================================
Fltkhs aims to be a complete Haskell binding to the [FLTK GUI library] [1].
While the current recommended version of FLTK is 1.3.4, the previous version 1.3.3. is also supported since some Linux distributions haven't upgraded yet.
Quick Install
-------------
### Linux, *BSD and OSX
Installing FLTK from source (vs. package mangers) is recommended. Package managers sometimes put headers and libraries in unexpected places
causing `fltkhs` compilation failures. On OSX the `brew` package for the current stable version of FLTK is broken. Furthermore some Linux distributions
only ship the shared libraries which means that executables are less portable. Compiling from source is pretty quick and painless and fixes these problems.
Install FLTK-1.3.4-1 from source:
```
> wget http://fltk.org/pub/fltk/1.3.4/fltk-1.3.4-1-source.tar.gz
> tar -zxf fltk-1.3.4-1-source.tar.gz
> cd fltk-1.3.4-1
> ./configure --enable-gl --enable-shared --enable-localjpeg --enable-localzlib --enable-localpng
> make
> sudo make install
> fltk-config --version
1.3.4-1
```
Build the FLTKHS skeleton project:
```
> brew install autoconf # Only on OSX
> git clone http://github.com/deech/fltkhs-hello-world
> cd fltkhs-hello-world
> stack install
# About 6-8 minutes passes ...
> stack exec fltkhs-hello-world
```
### Windows
Please see the [detailed Windows installation instructions](http://hackage.haskell.org/package/fltkhs/docs/Graphics-UI-FLTK-LowLevel-FLTKHS.html#g:7)
Screenshots
-----------
[Drawing with FLTKHS](images/arc-windows.png)
[A table of widgets](images/widget-table-windows.png)
[A complex tree](images/tree-complex-windows.png) Done completely using Fluid. Notice how tree nodes can be arbitrary widgets.
Demos
-----
A number of demos are also available in the [fltkhs-demos] [4] and the [fltkhs-fluid-demos] [5] packages.
[1]: http://www.fltk.org/index.php "FLTK"
[2]: http://www.fltk.org/software.php
[3]: http://hackage.haskell.org/package/fltkhs/docs/Graphics-UI-FLTK-LowLevel-FLTKHS.html
[4]: http://github.com/deech/fltkhs-demos
[5]: http://github.com/deech/fltkhs-fluid-demos