[Haskell-cafe] Status of Haskell + Mac + GUIs & graphics

John Lato jwlato at gmail.com
Thu May 26 12:03:04 CEST 2011


fltk definitely has some good points, but I've always found it hideously
ugly.  Of course the default gtk on osx is ugly too, but some of the
available themes are nice.

However, getting gtk with OpenGL on osx was fairly easy.  Everything worked
out of the box except gtkglext (Haskell package).  I've submitted some
patches for that which hopefully will be applied to the repo soon.

This is what I used:

git
darcs
ghc-7.0.3 (self-compiled)
cabal-install
macports gtk2 +no_x11 +quartz
macports gtkglext +no_x11 +quartz
gtk2hs from source
gtkglext (Haskell) from source


I use a self-compiled ghc, but this should work with any ghc.  Mixing ghc
and macports can cause problems with libiconv, but the solutions are pretty
well-known.  Since I compile ghc, I configure it to use macports's libiconv
so there aren't any conflicts.


> sudo port install gtkglext +no_x11 +quartz
(wait a while...)
> darcs get --lazy http://code.haskell.org/gtk2hs
> cd gtk
> cabal install gtk2hs-buildtools
> chmod +x bootstrap.sh
> ./bootstrap.sh "-fhave-quartz-gtk"
(wait a while...)
> cd ..
> darcs get --lazy http://code.haskell.org/gtkglext
> cd gtkglext
> darcs apply gtkglext.dpatch
> cabal install


Until the source tree gets patched, you'll have to manually apply the patch
bundle.

If you want to avoid macports, it should be possible to use gtk-osx and
gtkglext from source instead.  However, I've found gtk-osx to be unstable
and quite difficult to build in the past, so I'd strongly recommend
macports, at least for now.  The source install of gtkglext works just fine
and can be used with macports gtk2 (I tested this).  Since this path already
uses macports there's not much benefit though.

Cheers,
John L

On Wed, May 25, 2011 at 9:07 PM, Evan Laforge <qdunkan at gmail.com> wrote:

> fltk supports OpenGL on windows, X11, and OS X, though I've never used
> it.  The thing it doesn't have is a haskell binding, but as I
> mentioned I just bind whatever I need when I need it and since I don't
> need much it's easy.  Dunno if this applies in your case though.
>
> Maybe it's my NIH, but I like to start with something too simple and
> add what I need rather than start with something that has more than I
> need and try to get it working.
>
> On Wed, May 25, 2011 at 11:58 AM, Conal Elliott <conal at conal.net> wrote:
> > Thanks, John. Encouraging bit of news. Please do let us know what you
> learn
> > when you try.   - Conal
> >
> > On Tue, May 24, 2011 at 1:28 AM, John Lato <jwlato at gmail.com> wrote:
> >>
> >> You can use gtkglext to get OpenGL support.  With the official release
> of
> >> gtkglext-1.2.0 there's a bit of hacking involved (that was probably me
> >> you're referring to), but it looks like the repo head has native Quartz.
> >> With any luck, you just need to build gtkglext from the repo, then the
> >> gtkglext package.
> >>
> >> I might have some time to try this later today; I'll report back if I
> get
> >> results.
> >>
> >> John Lato
> >>
> >> On Tue, May 24, 2011 at 6:01 AM, Conal Elliott <conal at conal.net> wrote:
> >>>
> >>> Last I tried, there wasn't native support for OpenGL with gtk, and I
> need
> >>> OpenGL. Then more recently, I heard of some progress in that area, but
> >>> requiring lots of hacking to get it all compiling. Any recent news?  -
> Conal
> >>>
> >>> On Mon, May 23, 2011 at 2:33 AM, John Lato <jwlato at gmail.com> wrote:
> >>>>>
> >>>>> Message: 17
> >>>>> Date: Fri, 20 May 2011 15:59:51 -0700
> >>>>> From: Evan Laforge <qdunkan at gmail.com>
> >>>>> Subject: Re: [Haskell-cafe] Status of Haskell + Mac + GUIs & graphics
> >>>>> To: Erik Hesselink <hesselink at gmail.com>
> >>>>> Cc: haskell-cafe at haskell.org
> >>>>> Message-ID: <BANLkTi=74mM6ORtU2e192jtoOT9g49fzTQ at mail.gmail.com>
> >>>>> Content-Type: text/plain; charset=ISO-8859-1
> >>>>>
> >>>>> > Note that it is supposed to be possible to build gtk2hs with
> gtk+osx,
> >>>>> > which will not use X11 but use the native OS X GUI. I've not been
> >>>>> > able
> >>>>> > to get this to work, but it's been a while since I tried. The
> Haskell
> >>>>> > wiki mentions it doesn't support Glade, but does support Cairo. If
> >>>>> > this were to work, gtk2hs would be a serious option as well.
> >>>>>
> >>>>> I've tried this 3 or 4 times, and failed every time.  It's crazy
> >>>>> complicated.
> >>>>
> >>>> I used to use this combination regularly.  IME the difficulties are
> >>>> primarily with getting a working gtk+osx build.  Once that was
> accomplished,
> >>>> gtk2hs was a straightforward install, provided you build from the src
> repo
> >>>> with the -quartz flag.
> >>>> Recently I've switched to using macports gtk2 with the quartz, no-x11
> >>>> variant, which also uses native cocoa.  This is much more reliable
> than
> >>>> gtk+osx.  I don't know if it supports Glade though.
> >>>> My biggest problem with wx is that there's no support for building
> >>>> 64-bit wx applications on OS X.  If that were fixed I might prefer it.
> >>>> John Lato
> >>>> _______________________________________________
> >>>> Haskell-Cafe mailing list
> >>>> Haskell-Cafe at haskell.org
> >>>> http://www.haskell.org/mailman/listinfo/haskell-cafe
> >>>>
> >>>
> >>
> >
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20110526/bc76460a/attachment.htm>


More information about the Haskell-Cafe mailing list