Неразрешенная внешняя typedef при компиляции с X11

Я компилирую приложение, используя quake qgl api на X11/FreeGLUT (OSX 10.12). Компиляция завершается неудачно с такими ошибками:

/ref_gl/qgl.h:579:8: error: unknown type name     'PFNGLTEXIMAGE3DEXTPROC'; 
did you mean 'PFNGLXBINDTEXIMAGEEXTPROC'?
extern PFNGLTEXIMAGE3DEXTPROC             glTexImage3DEXT;

Кажется, что внешние определения типов ( PFNGLPNTRIANGLESIATIPROC, PFNGLPNTRIANGLESFATIPROC, PFNGLTEXIMAGE3DEXTPROC ...) не могут быть найдены компилятором.

UPD: инструкции, за которыми я следую: sourceforge. сеть / проекты /quake2xp/ файлы / Linux%20release/

Пожалуйста, какие-либо предложения?

2 ответа

Решение

Решено: использовать только библиотеку X11 GL для этого проекта. Ошибка была вызвана смешиванием префиксов OpenGL в директивах #import:

#include <OpenGL/... > (Native MacOS)  and  #include <GL/...> (X11)

Только

#include <GL/...>

Префикс должен быть использован.

Не используйте X11 на MacOS. X11 не является родной графической системой MacOS, и сервер X11, который поставляется с MacOS, не имеет расширенной поддержки OpenGL.

Используйте встроенную платформу MacOS OpenGL.

Другие вопросы по тегам