2016-11-03 2 views
3

Ich habe kürzlich mit OpenGL gearbeitet und entschieden, C++ für mein neuestes Projekt mit OpenGL zu verwenden. Ich verwende xCode 8.1 mit meinen Bibliothekspfaden und Kopfpfaden, die richtig verbunden sind. Alles kompiliert gut, aber ich erhalte diesen Fehler zur Laufzeit:xCode 8.1 GLFWWindow "first responder" Problem

2016-11-03 15:17:24.649264 Modulo[25303:14858638] [General] ERROR: Setting <GLFWContentView: 0x100343da0> as the first responder for window <GLFWWindow: 0x100222540>, but it is in a different window ((null))! This would eventually crash when the view is freed. The first responder will be set to nil.(
0 AppKit        0x00007fff85c069a4 -[NSWindow _validateFirstResponder:] + 566 
1 AppKit        0x00007fff853f79eb -[NSWindow _setFirstResponder:] + 31 
2 AppKit        0x00007fff8549f66a -[NSWindow _realMakeFirstResponder:] + 406 
3 AppKit        0x00007fff8549f480 -[NSWindow makeFirstResponder:] + 123 
4 libglfw3.3.dylib     0x000000010011194a _glfwPlatformCreateWindow + 610 
5 libglfw3.3.dylib     0x000000010010d533 glfwCreateWindow + 428 
6 Modulo        0x00000001000010a8 main + 296 
7 libdyld.dylib      0x00007fff9c828255 start + 1 
8 ???         0x0000000000000001 0x0 + 1) 

Der Code, den ich betreibe diese Fehler zu erzeugen, ist wie folgt:

#include <iostream> 
#define GLEW_STATIC 
#include <GL/glew.h> 
#include <GLFW/glfw3.h> 

int main(int argc, const char * argv[]) { 
    //Engine Startup. 
    std::cout << "<----- Engine Start-Up ----->" << std::endl; 
    //Initialize GLFW. 
    if(!glfwInit()) { 
     std::cout << "- GLFW Failed to Initialize!" << std::endl; 
     return -1; 
    } 
    std::cout << "+ GLFW Initialized!" << std::endl; 
    //Create GLFWWindow 
    GLFWwindow* window = glfwCreateWindow(640, 480, "Engine", nullptr, nullptr); 
    if(!window) { 
     std::cout << "- GLFWWindow Failed to Create!" << std::endl; 
     glfwTerminate(); 
     return -1; 
    } 
    std::cout << "+ GLFWWindow Created!" << std::endl; 
    return 0; 
} 

Das Programm führt, wie es sollte, aber dieser Fehler könnte ein Problem werden später und macht auch die Konsole schwer zu debuggen, also möchte ich versuchen, es früh zu sortieren!

Vielen Dank im Voraus und wenn weitere Informationen benötigt werden, lassen Sie es mich bitte wissen! :)

Antwort

2

Ich bin ein Anfänger und ich habe auch dieses Problem konfrontiert.

Ich habe einen Fehler, aber erfolgreich Fenster zu erstellen. Wie wäre es mit Hinzufügen:

glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3); 
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 2); 
glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE); 
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE); 

vor glfwCreateWindow?

1

Hinweis Diskussion hier GLFW first responder error, die angibt, es ist ein bekannter Fehler in macOS Sierra, die im Git Repo für GLFW angesprochen wurde, aber noch nicht veröffentlicht.

Verwandte Themen