[HOpenGL] Compiling HOpenGL under recent versions of GHC

Sven Panne Sven.Panne at aedion.de
Tue May 18 20:25:02 EDT 2004


[ I've CC'd to Andres as his function(?) as the GHC Gentoo maintainer/packager. ]

Weeble wrote:
>    I just recently installed Gentoo Linux with the intention of using 
> HOpenGL. Unfortunately I'm having problems compiling - something seems 
> to use a "_casm_" directive (I think) and GHC complains that this isn't 
> valid. [...]

It looks like you're using one of the old versions (1.0x) of HOpenGL from
http://haskell.org/HOpenGL, which are not supported anymore. The development
takes place in the fptools CVS repository now, so GHC, Hugs and NHC can use
it more easily. I don't know much about Gentoo Linux, but it looks like that
there is a GHC 6.2.1 in dev-lang/ghc. This is almost what you want... :-) It
already contains some basic OpenGL functionality, but being on a release branch,
it doesn't have all the features of the CVS main branch (full OpenGL 1.5 support
apart from NURBS, API docs at http://haskell.org/HOpenGL/newAPI/). So you are
basically left with 2 options:

    * Wait for the official release of GHC 6.4, but this will probably take some time.

    * Build GHC from the CVS main branch or the nightly snapshots (available at
      http://www.haskell.org/ghc/dist/current/dist/). I've got no idea how to do
      this via the ebuild system, but perhaps Andres Loeh can help. He seems to
      be the maintainer/packager for GHC on Gentoo.

If you can live without a properly packaged GHC version, simply doing things by
hand is not that hard nowadays (given that you have sufficiently recent versions
of Alex, Happy and Haddock installed):

    cd fptools   (or whatever the toplevel directory is called)
    autoreconf
    ./configure --enable-hopengl
    make all
    make html
    make install
    make install-docs

Depending on your needs, you might want to use the --prefix and/or --libdir
options of configure.

Building Hugs from CVS with OpenGL support is not that hard, either:

    cg hugs98     (or whatever the toplevel directory is called)
    make EXTRA_CONFIGURE_OPTS="--enable-hopengl"

Well, I should really update my HOpenGL web pages... :-]

Cheers,
    S.



More information about the HOpenGL mailing list