一、OpenGL 相关库的下载与安装
GLFW
GLFW 是配合 OpenGL 使用的轻量级工具程序库,缩写自 Graphics Library Framework(图形库框架)。GLFW 的主要功能是创建并管理窗口和 OpenGL 上下文,同时还提供了处理手柄、键盘、鼠标输入的功能。
就是用来创建窗口界面。
// 使用 Homebrew 安装:
brew install glfw3
// 头文件路径
/usr/local/Cellar/glfw/3.3.4/include/GLFW
// 库路径
/usr/local/Cellar/glfw/3.3.4/lib
GLEW
OpenGL Extension Wrangler Library (GLEW), a cross-platform C/C++ library that helps in querying and loading OpenGL extensions.
实现对底层OpenGL接口封装。
// 使用 Homebrew 安装:
brew install glew
// 头文件路径
/usr/local/Cellar/glew/2.2.0_1/include/GL
// 库路径
/usr/local/Cellar/glew/2.2.0_1/lib
Glad
作用与 GLEW 类似。
Language: C/C++
Specification: OpenGL
API: Version 3.3
Profile: Core
选中 Generate a loader 并点击 GENERATE 按钮,下载 glad.zip 文件,解压后复制到 /usr/local/Cellar/glad/
。
OpenGL Mathematics
OpenGL Mathematics (GLM) is a header only C++ mathematics library for graphics software based on the OpenGL Shading Language (GLSL) specifications.
// 使用 Homebrew 安装:
brew install glm
// 头文件路径
/usr/local/Cellar/glm/0.9.9.8/include/glm
https://glm.g-truc.net/0.9.8/index.html
stb_image.h
stb_image.h是Sean Barrett的一个非常流行的单头文件图像加载库,它能够加载大部分流行的文件格式,并且能够很简单得整合到你的工程之中。
https://github.com/nothings/stb
各个库的关系图
图片来源:https://www.cnblogs.com/chencarl/p/10722839.html
二、Xcode 配置
1、Header Search Paths
$(inherited)
/usr/local/include
/usr/local/Cellar/glfw/3.3.4/include/GLFW
/usr/local/Cellar/glew/2.2.0_1/include/GL
/usr/local/Cellar/glad/include
2、Library Search Paths
/usr/local/Cellar/glew/2.2.0_1/lib
/usr/local/Cellar/glfw/3.3.4/lib
3、User Header Search Paths
/usr/local/include
4、Link Binary With Libraries
三、编译错误处理
1、找不到符号
需要选择 macOS。
2、找不到镜像
选中 Disable Library Validation
3、stb_image.h 找不到符号
在代码最前面添加:
#define STB_IMAGE_IMPLEMENTATION