【发布时间】:2020-03-25 20:35:48
【问题描述】:
我正在使用 CMake 构建和安装某个库,foo。
我的库依赖于其他库 bar,它有一个配置 CMake 脚本,所以我有:
find_package(bar REQUIRED)
target_link_libraries(foo PUBLIC bar::bar)
就建筑而言。对于安装,我有适当的install() 命令,包括导出、版本配置和所有这些东西。这生成包的-config.cmake 文件(以及版本配置文件),所以我不需要在存储库中保留一个,也不需要在我的@987654327 中逐行生成@
现在,CMake 有一个名为find_dependency() 的模块,其documentation 建议用于包配置文件中。但是 - 我没有明确地将它添加到那里。我是不是该?更一般地说:在什么情况下,我应该手动确保包配置文件有一个 find_dependency() 用于各种 find_package() 的?
【问题讨论】:
标签: build cmake installation dependencies dependency-management