This is the mail archive of the
cygwin@cygwin.com
mailing list for the Cygwin project.
Re: Linking with OpenGL, glut
- From: Andre Bleau <bleau at igb dot umontreal dot ca>
- To: cygwin at cygwin dot com
- Date: Wed, 13 Nov 2002 09:57:58 -0500
- Subject: Re: Linking with OpenGL, glut
Braden McDaniel wrote:
I'm having some trouble with the directions in README.txt in the OpenGL
docs. They indicate one should use "-lopengl32"; however, that's not working
for me. Here is the excerpt from my config.log:
---
configure:16198: gcc -o conftest.exe -g -O2 -I/usr/X11R6/include
conftest.c -lopengl32 -L/usr/X11R6/lib -lm >&5
There seems to be some misunderstanding here. The OpenGL package is for
producing native Windows programs, not X11-dependant programs. Do not use
-I/usr/X11R6/include , -L/usr/X11R6/lib , and -lm if you want to use that
package.
/cygdrive/c/DOCUME~1/Braden/LOCALS~1/Temp/ccef6CMT.o(.text+0x1d): In
function `main':
/home/Braden/src/openvrml/openvrml/BUILD/configure:16190: undefined
reference to `_glBegin'
This shows that you are not including the right GL headers. If you were
pulling the right headers but linking incorrectly, the message would have
been: " undefined reference to `_glBegin@4' ".
collect2: ld returned 1 exit status
configure:16201: $? = 1
configure: failed program was:
#line 16170 "configure"
#include "confdefs.h"
# ifdef _WIN32
# include <windows.h>
# endif
# ifdef HAVE_OPENGL_GL_H
# include <OpenGL/gl.h>
# else
# include <GL/gl.h>
# endif
#ifdef F77_DUMMY_MAIN
# ifdef __cplusplus
extern "C"
# endif
int F77_DUMMY_MAIN() { return 1; }
#endif
int
main ()
{
glBegin(0)
;
return 0;
}
---
The following conftest.c programs compiles and link correctly:
#include <GL/gl.h>
int
main ()
{
glBegin(0)
;
return 0;
}
gcc -o conftest -g -O2 conftest.c -lopengl32
There's a similar problem with using -lglu32. However, -lGL works and -lGLU
works. So I wouldn't be complaining at all if I could figure out how to link
with glut. Neither "-lglut32 -lGLU -lGL" nor "-lglut -lGLU -lGL" works. Any
ideas?
Braden
Again -lglut32 is for linking native Windows programs. Use the right
include statements and the right headers:
#include <GL/gl.h>
#include <GL/glut.h>
Link with -lglut32 -lglu32 -lopengl32 .
-lGL and -lGLU are for X11 dependant programs. There is no Glut library in
Cygwin's X11R6 distribution.
André Bleau, Cygwin's OpenGL package maintainer.
email: bleau at igb dot umontreal dot ca
(Fight SPAM: encode your email-address)
Please address all questions and problem reports about Cygwin's OpenGL
package to cygwin@cygwin.com .
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/