FindGLEW¶
查找 OpenGL 扩展库 (GLEW)
find_package(GLEW [<version>] [...])
GLEW 是一个跨平台的 C/C++ 库,通过提供高效的运行时机制来查询和加载核心规范之外的 OpenGL 功能,从而帮助管理 OpenGL 扩展。
3.7 版本新增: 调试和发布库变体分别查找。
新增于 3.15 版本: 如果 GLEW 是使用其基于 CMake 的构建系统构建的,它会提供一个 CMake 包配置文件 (GLEWConfig.cmake)。此模块现在会考虑到这一点,并首先尝试以配置模式查找 GLEW。如果配置文件不可用,它将回退到模块模式并搜索标准位置。
导入的目标¶
此模块提供以下 导入目标
GLEW::GLEW版本 3.1 中新增。
封装 GLEW 使用要求的核心导入目标,如果找到 GLEW 则可用。它会根据可用性映射
GLEW::glew或GLEW::glew_s目标的用法要求。GLEW::glew版本 3.15 新增。
封装共享 GLEW 库用法要求的导入目标。如果找到 GLEW 并且未通过
GLEW_USE_STATIC_LIBS提示变量(如下文所述)请求静态库,则此目标可用。GLEW::glew_s版本 3.15 新增。
封装静态 GLEW 库用法要求的导入目标。如果找到 GLEW 并且
GLEW_USE_STATIC_LIBS提示变量被设置为布尔 true,则此目标可用。
结果变量¶
此模块定义了以下变量
GLEW_FOUND一个布尔值,指示是否找到了(所请求版本的)GLEW。
GLEW_VERSION版本 3.15 新增。
找到的 GLEW 版本。
GLEW_VERSION_MAJOR版本 3.15 新增。
找到的 GLEW 的主版本号。
GLEW_VERSION_MINOR版本 3.15 新增。
找到的 GLEW 的次版本号。
GLEW_VERSION_MICRO版本 3.15 新增。
找到的 GLEW 的微版本号。
GLEW_INCLUDE_DIRS使用 GLEW 库所需的包含目录。
GLEW_LIBRARIES链接以使用 GLEW 库所需的库(根据配置可能是共享库或静态库)。
GLEW_SHARED_LIBRARIES版本 3.15 新增。
链接以使用共享 GLEW 库所需的库。
GLEW_STATIC_LIBRARIES版本 3.15 新增。
链接以使用静态 GLEW 库所需的库。
提示¶
在调用 find_package(GLEW) 之前,此模块接受以下变量以影响其行为。
GLEW_USE_STATIC_LIBS版本 3.15 新增。
设置为布尔 true 以查找静态 GLEW 库并创建用于静态链接的
GLEW::glew_s导入目标。GLEW_VERBOSE版本 3.15 新增。
设置为布尔 true 以输出此模块的详细日志。例如,可用于调试。
示例¶
查找 GLEW 并将其链接到项目目标
find_package(GLEW)
target_link_libraries(project_target PRIVATE GLEW::GLEW)
使用静态 GLEW 库(如果找到)
set(GLEW_USE_STATIC_LIBS TRUE)
find_package(GLEW)
target_link_libraries(project_target PRIVATE GLEW::GLEW)