проблема инициализации opengl с glew и glfw - PullRequest
0 голосов
/ 19 сентября 2019

Я начинаю изучать OpenGL, но, к сожалению, не могу правильно выполнить инициализацию.Я добавил библиотеки glfw и glew, и эти функции выдают мне странную ошибку, как мне заставить это работать?

Код:

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

int main(void)
{
GLFWwindow* window;

/* Initialize the library */
if (!glfwInit())
{
    std::cout << "GLFW initialization failed.\n";
    return -1;
}
if (glewInit()!=GLEW_OK)
{
    std::cout << "GLEW initialization failed.\n";
    return -1;
}
window = glfwCreateWindow(640, 480, "Hello World", NULL, NULL);

if (!window)
{
    glfwTerminate();
    std::cout << "Wiondow failed.\n";
    return -1;
}

/* Make the window's context current */
glfwMakeContextCurrent(window);
/* Loop until the user closes the window */
while (!glfwWindowShouldClose(window))
{
    /* Render here */
    glClear(GL_COLOR_BUFFER_BIT);

    /* Swap front and back buffers */
    glfwSwapBuffers(window);

    /* Poll for and process events */
    glfwPollEvents();
}


glfwTerminate();
return 0;
}

Ошибки: THE ERROS DISPLAYED

1 Ответ

1 голос
/ 19 сентября 2019

Чтобы правильно связать библиотеку GLEW , необходимо установить правильные определения препроцессора.См. GLEW - Установка :

[...] В Windows вам также необходимо определить маркер препроцессора GLEW_STATIC при создании статической библиотеки или исполняемого файла, а также GLEW_BUILD токен препроцессора при сборке dll [...]

...