Kompilieren minimal GLEW Anwendung unter Cygwin

Betrachten Sie das folgende Programm und versuche zu kompilieren unter Cygwin:

#include <GL/glut.h>
int main(int argc, char** argv)
{
    glutInit(&argc, argv);
    glLoadIdentity();
}

Kompiliert und läuft einfach gut. -I/usr/include/opengl scheint zu sein, sehr wichtig.

g++ -I/usr/include/opengl -I../include/cygwin -L../lib/cygwin test.cpp -o test.exe -lglut32 -lglu32 -lglew32 -lopengl32

Nun,

#include <GL/glew.h> //from newest NVIDIA SDK
#include <GL/glut.h>
int main(int argc, char** argv)
{
    glewInit();
    glutInit(&argc, argv);
    glLoadIdentity();
}

zusammengestellt von

g++ -I/usr/include/opengl -I../include/cygwin -L../lib/cygwin test.cpp -o test.exe -lglut32 -lglu32 -lglew32 -lopengl32

ausfällt.
Wie Baue ich die zweite Anwendung?

Ersten

Gibt es mehrere Möglichkeiten, um glew durch die von NVIDIA SDK: VS, von cygwin, von cygwin mit -D_WIN32. Ich habe auch versucht cygwin-build von original glew von der Quelle.

VS build gibt

/cygdrive/c/DOCUME~1/kelebron/LOCALS~1/Temp/ccErbecl.o:test.cpp:(.text+0xa8): undefined reference to `_glLoadIdentity'
collect2: ld returned 1 exit status

cygwin-builds geben viele

../lib/cygwin/glew32.lib(glew.o):glew.c:(.text+0x38e): undefined reference to `_glXGetProcAddress'

- und cygwin-mit -D_WIN32 nicht kompiliert (und ich war ein wenig motiviert durch dieser Beitrag).

Zweiten

Scheint es zwei Wege, in Verbindung mit OpenGL

mit -L/lib/w32api

oder mit -L/usr/X11R6/lib -lX11 -lXi -lXmu

Aber die -L Richtlinien nichts ändern. Ich habe /usr/lib/w32api/libopengl32.ein, aber möglicherweise fehlt die X11-version (/usr/X11R6/lib/libGL?). Welches Paket sollte ich auch in Cygwin? Ich habe installiert alle beginnend mit libGL (nicht nur...).

InformationsquelleAutor kelebron | 2008-12-23
Schreibe einen Kommentar