Fltkhs - A Haskell Binding to the FLTK GUI Library
Fltkhs aims to be a complete Haskell binding to the FLTK GUI library.
NOTE: As of version 0.5.0.1 only FLTK 1.3.4-1 is supported. Old code written against FLTK 1.3.3 will still work, 1.3.4 does not remove any functionality.
NOTE: As of version 0.4.0.0, due to the introduction of closed type families, only GHC >= 7.8.1 is supported.
Linux, *BSD and OSX
Installing FLTK from source (vs. package mangers) is recommended. Package managers sometimes put headers and libraries in unexpected places
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
Please see the detailed Windows installation instructions
A complex tree Done completely using Fluid. Notice how tree nodes can be arbitrary widgets.