With 6.6.1, the windows installer gave you a completely functioning GL/GLUT setup.
With 6.8.1, GLUT doesn't appear to be included.
This is a slightly frustrating regression. It is apparently made worse by the fact that hand-installing GLUT from hackage is not easy under windows either.
Installing GLUT along with the default Windows install sounds like overkill - something like Gtk2hs is probably more commonly installed, and isn't bundled. Perhaps the real problem is the difficulty in installing GLUT separately, which can be remedied by a separate installer.
Installing GLUT along with the default Windows install sounds like overkill - something like Gtk2hs is probably more commonly installed, and isn't bundled. Perhaps the real problem is the difficulty in installing GLUT separately, which can be remedied by a separate installer.
-- Neil
Speaking for myself (and who else could I speak for!) I've always rather enjoyed the fact that haskell comes with a working openGL installation out-of-the-box, and I think it would be sad if that is true on some platforms but not others...
I do take your point about commonness of use, though.
I'd be interested to know whether this change is accidental or deliberate.
Either way, something has changed and it should be documented in the release notes. Even if we decide to do nothing else, we should document the change.
I know that GLUT is not included on Windows. Can anybody confirm whether or not it is present on other platforms?
Replying to [ticket:1917#comment:20242 guest]:
Speaking for myself (and who else could I speak for!) I've always rather enjoyed the fact that haskell comes with a working openGL installation out-of-the-box, and I think it would be sad if that is true on some platforms but not others...
I do take your point about commonness of use, though.
since you won't speak for myself, i'll have to!-) with HGL no longer supported directly, OpenGL/GLUT is the last standard graphics lib combo for haskell. Sven has always kept the bindings up to date, so they are actually a big plus for haskell. Gtk2hs is a lot bigger than GLUT, and there is no standard as to which GUI lib to support (the standard haskell gui lib is wxhaskell, according to some long-gone gui force and a haskell workshop vote), so supporting GLUT as a minimal starter system for OpenGL that works out of the box on all platforms makes a lot of sense, i think. the only thing that keeps me from using it continuously is the rudimentary support for text..
I'd be interested to know whether this change is accidental or deliberate.
It's accidental.
Either way, something has changed and it should be documented in the release notes. Even if we decide to do nothing else, we should document the change.
GLUT is an extralib, and extralibs are not part of the release; we just bundle them in some of the binary builds for convenience. The release notes don't mention them, and as far as GHC is concerned there has been no change.
In GHC 6.10 I think it would be a good idea to (automatically) build separate Windows installers for the extralibs (instead of bundling them in the GHC installer), to help clarify the situation, and so that users can pick and choose what they want more easily. Hopefully this would be a stepping stone to someone implementing a more general solution, for all the packages on hackage.
The reason GLUT hasn't been included seems to be that the C GLUT libraries aren't installed on the machine that builds the Windows binaries, so I'm assigning this to Simon Marlow. Simon, can you either install the C libraries or close this bug as wontfix please?
Thanks for the clarification - that makes more sense.
I've seen a few places where there is talk about "boot libraries" and "extralibs", but I've never found any clear explanation of what this terminology actually means. Can something be added to the documentation somewhere (GHC user manual I suppose?) to make it clear what the situation is? That way nobody else will end up filling tickets like this one in future. :-)
I have fixed the GLUT package so that it at least builds now. Mingw seems to include glut.h, libglut.a and libglut32.a.
You do need to install a separate GLUT DLL, it seems. This was the case with 6.6.1 too. After downloading one and putting it in the current directory I was able to run the GLUT demos.