Glad: GLAD für GLES 2.0 kann nicht kompiliert werden. als andere Art von Symbol neu deklariert

Erstellt am 1. Juni 2019  ·  8Kommentare  ·  Quelle: Dav1dde/glad

Ich habe versucht, eine einfache OpenGL-Anwendung mit GLAD zu kompilieren, aber ich bekomme eine Menge Warnungen darüber, dass Dinge "als eine andere Art von Symbol deklariert" werden.

Hier sind meine Einstellungen für den Online-Generator:

Sprache: C / C ++
GL: Keine
GLES1: Keine
GLES2: 2,0
GLSC2: Keine
Spezifikation: OpenGL
Profil: Kompatibilität
Keine Erweiterungen.
Einen Loader generieren ist aktiviert, die anderen beiden Kontrollkästchen nicht.

Dies geschieht mit einer vollständig leeren main.c, die nur #include "glad/glad.h" und sofort return 0; ausführt. Wenn Sie die ES 2.0-Version durch 3.3 ersetzen, wird sie perfekt kompiliert.

C glad1 question

Alle 8 Kommentare

Ich kann das nicht reproduzieren.

image

Hier ist eine minimale Reproduktion des Problems:

glad.zip

Ich kann das Problem mit Ihrem Build immer noch nicht reproduzieren.

image

image

Bitte teilen Sie den vollständigen Befehl, den Sie zum Kompilieren verwenden, und alle Dateien mit.

Ich verwende das mitgelieferte Makefile aus der von mir hochgeladenen Zip-Datei. Die GCC-Version ist 7.4.0

Hier ist das vollständige Fehlerprotokoll, das ich beim Versuch bekomme, es in eine Textdatei zu schreiben, weil es ziemlich lang ist.

errorlog.txt

Nach einigen zusätzlichen Experimenten habe ich das eigentliche Problem gefunden. Es scheint, als würde GLAD und unmittelbar danach GLFW / glfw3.h eingeschlossen, was dazu führt, dass dies geschieht. Wenn ich das eine oder andere einbeziehe, funktioniert es gut.

Das ist zu erwarten, glfw enthält standardmäßig die gl-Header. Siehe: https://www.glfw.org/docs/latest/build.html#build_include und definieren Sie GLFW_INCLUDE_NONE bevor Sie glfw einschließen.

Das hat funktioniert, danke für die Hilfe!

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen