Re: Compiling HOpenGL under recent versions of GHC

Sven Panne <[email protected]>
Newsgroups gmane.comp.lang.haskell.hopengl
Message-ID <[email protected]>
[ 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.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.