使用gcc构建时出错
我和高兴有麻烦。我已下载了以下源文件:使用gcc构建时出错,c,opengl,glad,C,Opengl,Glad,我和高兴有麻烦。我已下载了以下源文件: 语言-C/C++ 规范-OpenGL API-德国劳埃德船级社4.6版 型芯 已选中生成加载程序 解包归档文件后,我得到了以下结构(目前尽可能简单): 我的main.c是这样的: #include "./glad.h" #include <GLFW/glfw3.h> int main() { return 0; } 但我犯了以下错误: glad.c:1328:1: error: unknown type na
- 语言-C/C++
- 规范-OpenGL
- API-德国劳埃德船级社4.6版
- 型芯
- 已选中生成加载程序
main.c
是这样的:
#include "./glad.h"
#include <GLFW/glfw3.h>
int main() {
return 0;
}
但我犯了以下错误:
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");
| ^~~~
| ;
这段代码对我来说真的很奇怪,但它是从库中获取的,所以我自己更改它看起来并不太好…只要确保下载正确的配置,一切都会好起来的。你能给我们这个配置的永久链接吗?我的
glady.c
只有1834行,而不是2441行当然,@genpfault,这是你想要的@kaios,我只编辑了这个问题:)哎呀。。我的bad@kaios,马安。。。。我不知道那是什么魔法,但它确实有效)
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");
| ^~~~
| ;