Linux OpenGL (1)——环境搭建(GLFW, glad)

发布时间 2023-12-22 14:54:09作者: Torch_HXM

所有代码和过程都已经过测试
测试环境:Ubuntu WSL 18.04

为什么需要 GLFW 和 glad 库

我粗浅的理解:opengl 并没有提供一些跨平台代码的实现细节,因此,需要根据不同的平台下载一些库来填充 opengl 中“空虚”的函数。

如何安装 GLFW 和 glad 库

安装 GLFW

# 安装 GLFW
sudo apt-get install libglfw3-dev

安装 glad

  1. 查看 OpenGL 版本

    sudo apt install mesa-utils
    DISPLAY=:0 glxgears -info | grep GL_VERSION
    

    GL_VERSION = 3.1 Mesa 20.0.8

    可以看到,版本是 3.1

  2. 下载 glad 压缩包

    下载地址

    在 API 部分选择自己的版本,然后点击网页右下角的 GENERATE 进入下载页面。在下载页面中下载 glad.zip

    image

  3. 解压压缩包,安装库文件

    进入下载目录执行

    mkdir glad && unzip glad.zip -d glad && cd glad/include
    sudo mv glad/ /usr/local/include
    sudo mv KHR/ /usr/local/include
    cd ../../ && rm -r glad
    

测试和注意事项

// main.cpp
#include <glad/glad.h>      // glad 头文件必须放在所有头文件之前
#include <GLFW/glfw3.h>

int main(){
    return 0;
}
g++ main.cpp
./a.out

注意:glad 头文件必须放在所有头文件之前,否则会报错!

报错示范:

In file included from main.cpp:2:0:
/usr/local/include/glad/glad.h:27:2: error: #error OpenGL header already included, remove this include, > glad already provides it
#error OpenGL header already included, remove this include, glad already provides it
^~~~~