目录
#注意:这种方法每次新建一个项目都需要手动配置
一、下载必要的库
1、GLFW
(1)前往 GLFW官网
(2)下载 Windows 预编译的二进制文件(32位或64位,根据你的系统选择)
(3)解压到一个方便的位置,例如 E:\libs\glfw-3.x.x
2、GLAD
(1)访问 GLAD 在线服务
(2)选择以下配置:
-
Language: C/C++
-
Specification: OpenGL
-
API: gl 版本(如 3.3 或更高)
-
Profile: Core
-
勾选 “Generate a loader”
-
点击 “Generate” 并下载 zip 文件
(3)解压到例如 E:\libs\glad
二、设置 Code::Blocks 项目
1、打开 Code::Blocks
2、创建项目:File → New → Project → Console application
三、 配置项目
1、包含路径
(1)Project → Build options…
(2)选择你的项目名称(不是 Debug 或 Release)
(3)在 “Search directories” 选项卡下:
-
添加 GLFW 的 include 文件夹:E:\libs\glfw-3.x.x\include
-
添加 GLAD 的 include 文件夹:E:\libs\glad\include
2、库路径
(1)在 “Linker settings” 选项卡下:
-
添加 GLFW 的库文件:E:\libs\glfw-3.x.x\lib-mingw-w64\libglfw3.a(路径可能因版本不同)
-
添加 OpenGL 库:opengl32(不需要完整路径,MinGW 会自动找到它。确保你使用的是 MinGW 工具链(而不是 MSVC))
-
添加 GDI 库(如果需要):gdi32
(2)在 “Search directories” → “Linker” 选项卡下:
- 添加 GLFW 的 lib 文件夹:E:\libs\glfw-3.x.x\lib-mingw-w64
3、添加源文件
将 GLAD 的 glad.c 文件(位于 E:\libs\glad\src)添加到你的项目中:
右键项目 → Add files…
选择 glad.c
#三种优化方法,避免重复配置
方法 1:保存项目模板(推荐)
1、配置好一个 GLFW + GLAD 项目(包含路径、库路径、链接库等)。
2、File → Save Project as Template(保存为模板)。
3、下次新建项目时,选择 “User templates”,直接使用该模板,无需重复配置。
方法 2:设置全局编译器选项(适用于所有项目)
1、Settings → Compiler… → Global compiler settings
2、在 Search directories → Compiler 中添加:
-
GLFW 的 include 路径(如 C:\libs\glfw-3.x.x\include)
-
GLAD 的 include 路径(如 C:\libs\glad\include)
3、在 Search directories → Linker 中添加:
- GLFW 的 lib 路径(如 C:\libs\glfw-3.x.x\lib-mingw-w64)
4、在 Linker settings 中添加:
-
opengl32
-
libglfw3.a(或 glfw3.lib)
-
其他依赖库(如 gdi32)
✅ 优点:所有新项目都会自动包含这些设置。
❌ 缺点:如果不同项目需要不同版本的库,可能会冲突。
方法 3:使用 CMake(更现代的方式)
如果你愿意改用 CMake + Code::Blocks,可以:
1、创建一个 CMakeLists.txt 文件,自动管理依赖项:
cmake_minimum_required(VERSION 3.10)
project(MyGLProject)
set(GLFW_DIR "C:/libs/glfw-3.x.x") # 修改为你的路径
set(GLAD_DIR "C:/libs/glad")
# 添加 GLFW
add_library(glfw STATIC IMPORTED)
set_target_properties(glfw PROPERTIES
IMPORTED_LOCATION "${GLFW_DIR}/lib-mingw-w64/libglfw3.a"
INTERFACE_INCLUDE_DIRECTORIES "${GLFW_DIR}/include"
)
# 添加 GLAD
add_library(glad STATIC "${GLAD_DIR}/src/glad.c")
target_include_directories(glad PUBLIC "${GLAD_DIR}/include")
# 主程序
add_executable(my_gl_app main.cpp)
target_link_libraries(my_gl_app glfw glad opengl32 gdi32)
2、在 Code::Blocks 中:
-
File → New → Project → CMake project
-
选择你的 CMakeLists.txt,Code::Blocks 会自动解析依赖关系。
✅ 优点:跨平台,依赖管理更灵活,适合大型项目。
❌ 缺点:需要学习 CMake 语法。