FindDevIL¶
查找 Developer's Image Library,即 DevIL
find_package(DevIL [<version>] [...])
在 4.2 版本加入: 支持 find_package() 调用中的 <version> 参数。版本也可以指定为范围。
DevIL 包内部由以下库组成,所有库都作为同一发行版的一部分发布:
核心图像库 (IL)
在使用 DevIL 时,始终需要此库,因为它提供了主要的图像加载和操作功能。
图像库工具 (ILU)
此库依赖于 IL,并提供图像滤镜和效果。如果应用程序使用此扩展功能,才需要它。
图像库工具包 (ILUT)
此库依赖于 IL 和 ILU,并额外提供与 OpenGL 的接口。如果应用程序将 DevIL 与 OpenGL 一起使用,才需要它。
导入的目标¶
此模块提供以下 导入目标
DevIL::IL3.21 版本新增。
封装核心图像库 (IL) 使用要求的 Target,如果找到 DevIL 包则可用。
DevIL::ILU3.21 版本新增。
封装图像库工具 (ILU) 使用要求的 Target,如果找到 DevIL 包则可用。为了方便起见,此 Target 也链接到
DevIL::IL,因为 ILU 依赖于核心 IL 库。DevIL::ILUT3.21 版本新增。
封装图像库工具包 (ILUT) 使用要求的 Target,如果找到 DevIL 包及其 ILUT 库则可用。此 Target 也链接到
DevIL::ILU,并间接链接到DevIL::IL,因为 ILUT 依赖于两者。
结果变量¶
此模块定义了以下变量
DevIL_FOUND版本 3.8 新增。
布尔值,指示是否找到(请求版本的)DevIL 包,包括 IL 和 ILU 库。
DevIL_VERSION版本 4.2 中添加。
找到的 DevIL 的版本。
DevIL_ILUT_FOUND3.21 版本新增。
布尔值,指示是否找到 ILUT 库。在大多数系统中,当 IL 和 ILU 都可用时,ILUT 也会被找到。
缓存变量¶
以下缓存变量也可以设置
IL_INCLUDE_DIR包含
il.h、ilu.h和ilut.h头文件的目录。IL_LIBRARIES核心图像库 (IL) 的完整路径。
ILU_LIBRARIESILU 库的完整路径。
ILUT_LIBRARIESILUT 库的完整路径。
示例¶
查找 DevIL 包并链接到核心图像库 (IL)
find_package(DevIL)
target_link_libraries(app PRIVATE DevIL::IL)
链接到图像库工具 (ILU)
find_package(DevIL)
target_link_libraries(app PRIVATE DevIL::ILU)
链接到图像库工具包 (ILUT)
find_package(DevIL)
target_link_libraries(app PRIVATE DevIL::ILUT)