This is the mail archive of the
cygwin-apps
mailing list for the Cygwin project.
Conflict betwen the opengl package and the w32api package over libglut32.lib
- From: André Bleau <andre_bleau at hotmail dot com>
- To: <cygwin-apps at cygwin dot com>
- Date: Wed, 3 Dec 2008 11:18:21 -0500
- Subject: Conflict betwen the opengl package and the w32api package over libglut32.lib
Hi there.
For a very long time, the w32api package has provided /usr/lib/w32api/libglut32.a .
I don't know why the w32api package provides libglut32.a ; it is the only
glut-related file that it provides. The rest of glut, that is, the glut.h header and
the glut32.dll, are provided by the opengl package.
This was fine until glut32.dll was updated from 3.7.3 to 3.7.6, which happened at
the release of opengl-1.1.0-6. From then, libglut32.a has been missing
some hidden functions in the new glut32.dll: ___glutCreateMenuWithExit,
___glutCreateWindowWithExit, and ___glutInitWithExit. I hacked around it in
glut.h, but this caused programs to continue to run in the background if their
window was closed by using the close (X) icon in the title bar.
For opengl-1.1.0-9, I reversed that hack to correct the problem, but now if
you include glut.h, you can not link with libglut32.a, as it misses the 3
required functions. The opengl-1.1.0-9 package now includes glut32.lib, and linking
with it works well. But:
1- It is ugly. A POSIX environement should not require to link with some .lib file.
2- It forces developers of glut programs to modify their build system.
3- It creates confusion, as there is now 2 files competing for the same goal:
libglut32.a and glut32.lib, the first of which don't work anymore.
So, I am asking the maintainers of the w32api package to remove libglut32.a.
Then I would update the opengl package to include a version that is compatible
with the rest of glut.
Regards,
- André Bleau, Cygwin's volunteer OpenGL package maintainer.
Please direct any question or comment about the OpenGL package to cygwin at cygwin dot com
_________________________________________________________________