GLFW-CMake-starter 项目教程
1. 项目的目录结构及介绍
GLFW-CMake-starter/
├── CMakeLists.txt
├── include/
│ └── GLFW/
│ └── glfw3.h
├── src/
│ └── main.cpp
├── README.md
└── LICENSE
- CMakeLists.txt: CMake 配置文件,用于构建项目。
- include/: 包含 GLFW 的头文件。
- src/: 包含项目的源代码文件,其中
main.cpp
是主程序文件。 - README.md: 项目说明文档。
- LICENSE: 项目许可证文件。
2. 项目的启动文件介绍
src/main.cpp
是项目的启动文件,负责初始化 GLFW 并创建窗口。以下是 main.cpp
的主要内容:
#include <GLFW/glfw3.h>
int main() {
// 初始化 GLFW
if (!glfwInit()) {
return -1;
}
// 创建窗口
GLFWwindow* window = glfwCreateWindow(640, 480, "GLFW Window", nullptr, nullptr);
if (!window) {
glfwTerminate();
return -1;
}
// 主循环
while (!glfwWindowShouldClose(window)) {
// 渲染
glClear(GL_COLOR_BUFFER_BIT);
// 交换缓冲区并处理事件
glfwSwapBuffers(window);
glfwPollEvents();
}
// 清理
glfwTerminate();
return 0;
}
3. 项目的配置文件介绍
CMakeLists.txt
是项目的配置文件,用于配置 CMake 构建系统。以下是 CMakeLists.txt
的主要内容:
cmake_minimum_required(VERSION 3.10)
project(GLFW-CMake-starter)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED True)
find_package(GLFW 3.3 REQUIRED)
add_executable(GLFW-CMake-starter src/main.cpp)
target_include_directories(GLFW-CMake-starter PRIVATE ${GLFW_INCLUDE_DIR})
target_link_libraries(GLFW-CMake-starter ${GLFW_LIBRARIES})
- cmake_minimum_required: 指定所需的最低 CMake 版本。
- project: 定义项目名称。
- set: 设置 C++ 标准。
- find_package: 查找并配置 GLFW 库。
- add_executable: 定义可执行文件。
- target_include_directories: 指定包含目录。
- target_link_libraries: 链接 GLFW 库。