FindIconv

3.11 版本新增。

此模块在系统中查找 iconv() POSIX.1 函数。这些函数可能由标准 C 库提供,也可能以附加库的形式从外部提供。

导入的目标

此模块提供以下 导入目标

Iconv::Iconv

封装 iconv 使用要求的目标,仅在找到 iconv 时可用。

结果变量

此模块定义了以下变量

Iconv_FOUND

布尔值,指示是否找到了 iconv 支持。

Iconv_INCLUDE_DIRS

包含 iconv 头文件的目录。

Iconv_LIBRARIES

要链接的 iconv 库。

Iconv_VERSION

3.21 版本新增。

找到的 iconv 版本 (x.y)。

注意

某些 libiconv 实现未在其头文件中嵌入版本。在这种情况下,变量 Iconv_VERSION* 将为空。

Iconv_VERSION_MAJOR

3.21 版本新增。

iconv 的主版本。

Iconv_VERSION_MINOR

3.21 版本新增。

iconv 的次版本。

Iconv_IS_BUILT_IN

一个布尔变量,指示 iconv 支持是否源于 C 标准库。即使 C 库提供了 iconv(),外部 libiconv 实现的存在也可能导致此变量为 false。

缓存变量

以下缓存变量也可以设置

Iconv_INCLUDE_DIR

包含 iconv 头文件的目录。

Iconv_LIBRARY

iconv 库(如果 C 库中未隐式给出)。

注意

在 POSIX 平台上,iconv 可能是 C 库的一部分,缓存变量 Iconv_INCLUDE_DIRIconv_LIBRARY 可能为空。

示例

查找 iconv 并将其链接到项目目标

find_package(Iconv)
target_link_libraries(project_target PRIVATE Iconv::Iconv)