#c #opengl #glad
#c #opengl #рад
Вопрос:
у меня проблемы с ГЛЭД. Я загрузил исходные файлы с этой конфигурацией:
- Язык — C/C
- Спецификация — OpenGL
- API — gl Версии 4.6
- Профиль — Ядро
- Установлен флажок Сгенерировать загрузчик
После распаковки архива я получил эту структуру (на данный момент сделал ее максимально простой).:
project/
main.c
glad.h
glad.c
khrplatform.h
У main.c
меня что-то вроде этого:
#include "./glad.h"
#include <GLFW/glfw3.h>
int main() {
return 0;
}
И, наконец, я попытался скомпилировать его с gcc
помощью, потому что мой проект будет находиться в c
:
gcc main.c glad.c -lglfw -lGL -ldl -I. -o run
Но я получил эти ошибки:
glad.c:1328:1: error: unknown type name ‘PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC’; did you mean ‘PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC’?
1328 | PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC glad_glRenderbufferStorageMultisampleEXT = NULL;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC
glad.c:1328:87: warning: initialization of ‘int’ from ‘void *’ makes integer from pointer without a cast [-Wint-conversion]
1328 | PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC glad_glRenderbufferStorageMultisampleEXT = NULL;
| ^~~~
glad.c: In function ‘load_GL_EXT_framebuffer_multisample’:
glad.c:2441:46: error: ‘PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC’ undeclared (first use in this function); did you mean ‘PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC’?
2441 | glad_glRenderbufferStorageMultisampleEXT = (PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC)load("glRenderbufferStorageMultisampleEXT");
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC
glad.c:2441:46: note: each undeclared identifier is reported only once for each function it appears in
glad.c:2441:89: error: expected ‘;’ before ‘load’
2441 | glad_glRenderbufferStorageMultisampleEXT = (PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC)load("glRenderbufferStorageMultisampleEXT");
| ^~~~
| ;
Этот код действительно кажется мне странным, но он взят из библиотеки, так что использовать его самостоятельно выглядит не очень хорошо…
Комментарии:
1. можете ли вы дать нам постоянную ссылку на эту конфигурацию? У
glad.c
меня есть только 1834 строки, а не 24412. Конечно, @genpfault, вот оно
3. Вы хотели @kaios, я только отредактировал вопрос 🙂
4. Упси… моя вина
5. @kaios, maaan …. я не знаю, что это за магия, но она действительно работает)
Ответ №1:
Просто убедитесь, что вы загрузили правильную конфигурацию GLAD, все будет хорошо.