CMAKE: Configure/build 来自你包裹的一个外国包裹
CMAKE: Configure/build a foreign package from your package
假设您的 CMake C++ 项目依赖于某些外部库,例如 Google Benchmarks/Test。
我知道我可以独立配置和安装外部库,这样以后在构建我的个人项目时我可以访问它的 CMake 文件,这将很好地满足依赖关系(它将很好地添加它的头文件和库文件)
我的问题是:
- 是否可以在配置我的项目时绕过安装此外部库直接configure/build此外部库?
是的。看看https://cmake.org/cmake/help/latest/module/FetchContent.html
这正是我用于 fetching GTest 的内容。
想法很简单 - FetchContent 会为您克隆一个存储库,然后您 add_subdirectory
进入该存储库,您可以管理所有子项目的详细信息(假设项目使用 CMake 并且编写正确)。
我建议 ExternalProject
如果你想构建你之后获取的内容,它甚至比 FetchContent
更好。
假设您的 CMake C++ 项目依赖于某些外部库,例如 Google Benchmarks/Test。
我知道我可以独立配置和安装外部库,这样以后在构建我的个人项目时我可以访问它的 CMake 文件,这将很好地满足依赖关系(它将很好地添加它的头文件和库文件)
我的问题是:
- 是否可以在配置我的项目时绕过安装此外部库直接configure/build此外部库?
是的。看看https://cmake.org/cmake/help/latest/module/FetchContent.html
这正是我用于 fetching GTest 的内容。
想法很简单 - FetchContent 会为您克隆一个存储库,然后您 add_subdirectory
进入该存储库,您可以管理所有子项目的详细信息(假设项目使用 CMake 并且编写正确)。
我建议 ExternalProject
如果你想构建你之后获取的内容,它甚至比 FetchContent
更好。