我正在跟随this tutorial学习OpenGL,但是我在编译时遇到了问题,因为编译器找不到任何一个头文件。
这是我正在尝试编译的文件:
#include <glad/glad.h>
#include <GLFW/glfw3.h>
int main() {
return 0;
}为了编译,我使用
$ gcc -o sandbox sandbox.cpp -lGL -lGLU -lglut我得到了以下错误:
sandbox.cpp:1:23: fatal error: glad/glad.h: No such file or directory
#include <glad/glad.h>
^
compilation terminated.我按照this wiki 的前两部分安装了OpenGL和库。
我认为问题要么是错误的编译命令,要么是我的OpenGL安装中的一个缺陷。
发布于 2017-08-04 05:53:27
GLAD是用于OpenGL的函数加载器。此tutorial将解释如何设置它。
本教程解释了GLAD的用途:
由于有许多不同版本的OpenGL驱动程序,其大多数函数的位置在编译时是未知的,需要在运行时查询。
GLAD的设置包括使用web服务器生成特定于您的GL版本、扩展名和语言的源文件和头文件。然后,源文件和头文件被放置在项目的src和include目录中。
发布于 2021-03-25 19:31:30
如果您正在查看这个简单的GLFW example,您可以删除glad/gl.h包含,而
gladLoadGL(glfwGetProcAddress);再往下走。如果你使用的是linux,例如ubuntu,你不需要glad,只需要添加以下两个头文件:
#include <GLES2/gl2.h>
#include <EGL/egl.h>如果示例另存为glfw_ex2.c,则可以在命令行中编译它,如下所示:
g++ glfw_ex2.c -lglfw -lGLESv2当然,在本例中,linmath.h必须位于相同的目录中。
如果缺少任何东西,您可以像这样安装它,然后尝试重新编译:
sudo apt install libglfw3-dev libgles2-mesa-dev libegl1-mesa-dev
sudo apt install build-essential然后像这样运行它:
./a.out

https://stackoverflow.com/questions/45492937
复制相似问题