2017-05-02 4 views
0

Je me demande pourquoi mon code ne compile pas quand je décommentez la ligne GLChar* test = "Test";GLEW/programme SFML pas la compilation dans MinGW - "GLChar" non reconnu

Voici mon code complet:

#include <iostream> 

// GLEW 
#define GLEW_STATIC 
#include <GL/glew.h> 

// SFML 
#include <SFML/Window.hpp> 

const int WIDTH = 800, HEIGHT = 600; 
//GLChar* test = "Test"; 

int main() { 
    sf::Window window(sf::VideoMode(WIDTH, HEIGHT), 
       "OpenGL", 
       sf::Style::Default, 
       sf::ContextSettings(24, 0, 0, 3, 1)); 


    while (window.isOpen()) { 
     sf::Event event; 

     while (window.pollEvent(event)) { 
      if (event.type == sf::Event::Closed) { 
       window.close(); 
      } else if (event.type == sf::Event::Resized) { 
       glViewport(0, 0, event.size.width, event.size.height); 
      } 
     } 

     glClearColor(0.2f, 0.3f, 0.3f, 1.0f); 

     // clear the buffers 
     glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); 

     window.display(); 
    } 

    return 0; 
} 

Il est très confus pour moi que cela ne semble pas fonctionner quand je décommenter GLChar* test = "Test", étant donné que glClearColor et glClear fonctionnent bien autrement. Peu importe que ce soit dans main() ou globalement déclaré, l'erreur est la même.

L'erreur est:

E:\Downloads\SFML-Game\src\main.cpp:11:1: error: 'GLChar' does not name a type 
GLChar* test = "Test"; 

Mes bibliothèques sont maillées, je crois - voici ma région CMakeLists.txt pertinente:

target_link_libraries(game 
libglew32.a 
libopengl32.a 
libsfml-main-d.a 
libsfml-graphics-d.a 
libsfml-audio-d.a 
libsfml-system-d.a 
libsfml-window-d.a 
) 

Répondre

3

Regarder le cas: l'orthographe correcte du type est GLchar , pas GLChar.

+0

Ah, merci. Cela semble stupide maintenant. Je n'ai pas encore configuré l'autocomplétion dans mon environnement, ce qui m'aurait sauvé ici. J'ai eu tellement d'erreurs de liens dernièrement je ne pensais pas que ce serait autre chose! – Ashley