Linking with OpenGL, glut
Andre Bleau
bleau@igb.umontreal.ca
Wed Nov 13 08:07:00 GMT 2002
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/
More information about the Cygwin
mailing list