Компиляция GLFW вручную "Не выбран поддерживаемый API создания окна" - PullRequest
0 голосов
/ 28 апреля 2020

Я пытаюсь скомпилировать GLFW, включив исходный код GLFW непосредственно в мой проект (без lib или dll), и скомпилировать его.

Вот простой пример, который я сделал, чтобы попробовать его:

#include <iostream>

#define _GLFW_WIN32

#include <glad/glad.h>
#include <GLFW\glfw3.h>

int main(int argc, const char *argv[])
{
    return 0;
}

Все пути, определенные в glfw3.h, верны, и, как вы можете видеть, я определил макрос _GLFW_WIN32 (в соответствии с https://www.glfw.org/docs/3.1/compile.html). Однако при компиляции я получил эту ошибку:

C: \ GLFW \ code \ internal.h (194): фатальная ошибка C1189: #error: "Не выбран поддерживаемый API создания окна"

при просмотре internal.h (строка 183):

#if defined(_GLFW_COCOA)
 #include "cocoa_platform.h"
#elif defined(_GLFW_WIN32)
 #include "win32_platform.h"
#elif defined(_GLFW_X11)
 #include "x11_platform.h"
#elif defined(_GLFW_WAYLAND)
 #include "wl_platform.h"
#elif defined(_GLFW_OSMESA)
 #include "null_platform.h"
#else
 #error "No supported window creation API selected"
#endif

Что не имеет смысла, так как я определил _GLFW_WIN32. Есть идеи, что я делаю не так?

1 Ответ

0 голосов
/ 29 апреля 2020

Я обнаружил проблему, недостаточно использовать макрос #define, так как glfw будет скомпилирован перед моим основным кодом.

Я решаю ее, используя

- D _GLFW_WIN32

символ в командной строке компиляции

...