FindODBC¶
添加于版本 3.12。
查找开放数据库互连 (ODBC) 头文件目录和库。
在 Windows 上,当使用 Visual Studio 构建时,此模块假定 ODBC 库由可用的 Windows SDK 提供。
在 Unix 上,此模块允许搜索由 unixODBC 或 iODBC 实现的 ODBC API 提供的 ODBC 库。此模块读取关于配置程序位置的提示
- ODBC_CONFIG¶
odbc_config 或 iodbc-config 程序的位置
否则,此模块尝试查找配置程序,首先从 unixODBC,然后从 iODBC。如果未找到配置程序,此模块将在已知位置列表中搜索 ODBC 头文件和库。
导入目标¶
此模块定义以下 IMPORTED
目标
- ODBC::ODBC¶
用于使用 ODBC 库的导入目标(如果找到)。
结果变量¶
- ODBC_FOUND¶
如果找到 ODBC 库,则设置为 true,否则为 false 或未定义。
- ODBC_INCLUDE_DIRS¶
ODBC 客户端使用的包含目录路径,列在一个变量中。在 Windows 上可能为空,因为与预期 Windows SDK 对应的包含目录已在编译环境中可用。
- ODBC_LIBRARIES¶
要链接以使用 ODBC 的库的路径。在 Windows 上可能只是一个库名称,因为与预期 Windows SDK 对应的库目录已在编译环境中可用。
- ODBC_CONFIG
unixODBC 或 iODBC 配置程序的路径(如果找到或指定)。
缓存变量¶
对于希望编辑和控制模块行为的用户,此模块从以下变量中读取关于搜索位置的提示
- ODBC_INCLUDE_DIR¶
包含
sql.h
头文件的 ODBC 包含目录的路径。
- ODBC_LIBRARY¶
要链接的 ODBC 库的路径。
这些变量不应由项目代码直接使用。
局限性¶
在 Windows 上,此模块不搜索 iODBC。在 Unix 上,除了使用 ODBC_CONFIG
提供配置程序位置外,没有办法优先选择 unixODBC 而不是 iODBC,反之亦然。此模块不允许搜索特定的 ODBC 驱动程序。