kostenloser Webspace werbefrei: lima-city


Not declared in this scope

lima-cityForumProgrammiersprachenC/C++ und D

  1. Autor dieses Themas

    krisi12345

    Kostenloser Webspace von krisi12345

    krisi12345 hat kostenlosen Webspace.

    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!
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. 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
  4. Autor dieses Themas

    krisi12345

    Kostenloser Webspace von krisi12345

    krisi12345 hat kostenlosen Webspace.

    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
    ...
  5. 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>.
  6. Autor dieses Themas

    krisi12345

    Kostenloser Webspace von krisi12345

    krisi12345 hat kostenlosen Webspace.

    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!
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!