GLEW_APPLE_GLX вызывает ошибку компоновки при сборке GLEW
Я заглянул внутрь GLEW, пытаясь решить другой вопрос, касающийся пропажи __glewX*
символы для Mac, и обнаружил, что они охраняются GLEW_APPLE_GLX
,
Когда я пытаюсь собрать GLEW из источника с этим флагом, я получаю неопределенные символы (например, _glXGetClientString
). Связывание с X11 (-lX11
) не помогает
Вопрос: при условии определения GLEW_APPLE_GLX
действительно имеет смысл, как я могу исправить сборку?
1 ответ
При создании приложения, использующего X Server (XQuartz) вместо CGL, вам также необходимо добавить -lGL
,
Обычно при сборке программного обеспечения GL на OS X вы используете OpenGL.framework (-framework OpenGL
) и это дает вам функции OpenGL и CGL/AGL, но исключает GLX.
Вы также должны отказаться от любых включений в такие вещи, как <OpenGL/gl.h>
и использовать <GL/gl.h>
вместо этого, поскольку это будет указывать на /usr/X11R6/include/GL/...
вместо заголовков каркаса OpenGL.