Not declared in this scope
lima-city → Forum → Programmiersprachen → C/C++ und D
anwendung
code
datei
einbindung
fehler
folgender fehler
funktion
funktionieren
gleiche problem
glut
header
helfen
http
jemand
letzte externen bibliotheken
not
paar
test
url
wall
-
Ich hab ein Problem wo ich einfach keine Lösung finde und zwar schreibe ich ein paar OpenGL Test Anwendungen momentan in "mehr-Objektorientierten-Code" um. In einer (selbstgeschriebenen) Headerdatei tauchte dann irgendwann folgender Fehler auf:
... Mesh.h: In member function ‘bool Mesh::SetVertexData(GLfloat*, long int)’: Mesh.h:95: error: ‘glGenBuffers’ was not declared in this scope ...
Das ganze passiert anscheinend auch mit "glBindBuffer()", "glBufferData()", usw und ich kann mir aber überhaupt nicht den Fehler erklären. Der fehler taucht übrigens auch z.B. in der main() Funktion auf. Überschrieben werden die Funktion auch nicht da ich alle meine Header Dateien überprüft habe und auch versucht hab die OpenGL Dateien als letzte externen Bibliotheken einzubinden. Der Compilerbefehl sieht folgendermaßen aus:
g++ -Wall -I/usr/include/libxml2/ Test.cpp -o Test -lGL -lGLU -lglut -lxml2
Hoffe ihr könnt mir helfen! -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Not declared in this scope
Das heißt ja wohl dass eher die Header Datei in der die Funktionen glGenBuffers und Konsorten deklariert werden (bei mit glext.h) nicht oder zu spät included werden. Oder aber diese Funktionen sind in einem anderen Namespace definiert.
also
#include <glext.h>
#include "Mesh.h"
Ciao,
Franco
Beitrag zuletzt geändert: 13.11.2010 18:21:54 von franco-bez -
franco-bez schrieb:
Not declared in this scope
Das heißt ja wohl dass eher die Header Datei in der die Funktionen glGenBuffers und Konsorten deklariert werden (bei mit glext.h) nicht oder zu spät included werden. Oder aber diese Funktionen sind in einem anderen Namespace definiert.
also
#include <glext.h>
#include "Mesh.h"
Ciao,
Franco
Ich weis jetzt zwar nicht ganz was ich machen muss aber die einbindung der Dateien sieht folgendermaßen aus und sollte funktionieren:
hauptdatei.c - stdateien - xml-lib - opengl-libs (glut.h, gl.h, glu.h) glext wird eigentlich bei mir nicht benötigt - head1.h - - head1.h - - - mesh.h ...
-
Eventuell hilft dir dieser Link weiter: Open-GL.org Discussion. Dort hat jemand das gleiche Problem.
Lösung steht weiter unten:
now it is working. Thank you very much.
I just had to add: #define GL_GLEXT_PROTOTYPES
before I include <QtOpenGL>. -
tangoal schrieb:
Eventuell hilft dir dieser Link weiter: Open-GL.org Discussion. Dort hat jemand das gleiche Problem.
Lösung steht weiter unten:
now it is working. Thank you very much.
I just had to add: #define GL_GLEXT_PROTOTYPES
before I include <QtOpenGL>.
Danke! Das wars! -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage