Как использовать GLFW с openGL?
Я пытаюсь скомпилировать короткий код openGl и GLFW, но у меня не получается.. Я включил все.h вот так:
#include <stdio.h>
#include <stdlib.h>
#include <GL/glew.h>
#include <GL/glfw2.h>
Я на Linux, поэтому я сделал:
sudo zypper install libglfw2
Когда я собираю так:
g++ main.cpp -lGLU
Я имею:
main.cpp:14:22: fatal error: GL/glfw2.h:Any file or directory
#include <GL/glfw2.h>
^
compilation terminated.
Я также пытался включить #include <GL/glfw3.h>
но без успеха.
Это мой полный код:
#include <stdio.h>
#include <stdlib.h>
#include <GL/glew.h>
#include <GL/glfw2.h>
int main()
{
if (glfwInit() == false)
{
fprintf(stderr, "GLFW failed to initialise.\n");
return (-1);
}
glfwWindowHint(GLFW_FSAA_SAMPLES, 4);
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
GLFWwindow* window;
window = glfwCreateWindow(640, 480, "OPENGL", NULL, NULL);
if (!window)
{
fprintf(stderr, "Window failed to create\n");
glfwTerminate();
return (-1);
}
glfwMakeContextCurrent(window);
glewExperimental = true;
if (glewInit() != GLEW_OK)
{
fprintf(stderr, "Failed to initialize GLEW\n");
return (-1);
}
return (0);
}
Может кто-нибудь знать, что я должен сделать, чтобы скомпилировать мой код?
Спасибо
1 ответ
Здесь нет GL/glfw2.h
и никогда не было, и приведенный выше код использует GLFW 3 API. См. Переименованная библиотека и файл заголовка для получения дополнительной информации о путях заголовка.
Нет смысла использовать GLFW 2 для новых проектов, поэтому я бы избегал libglfw2
пакет. Вместо этого посмотрите, есть ли пакет GLFW 3.