gpt4 book ai didi

依赖于 cmake 项目的 Cmake 项目

转载 作者:行者123 更新时间:2023-12-05 02:21:43 27 4
gpt4 key购买 nike

我有一个依赖于另一个库的 cmake 项目。另一个库也使用 cmake,但它的构建步骤似乎更像是一个独立的项目而不是一个库。因此,当我的 cmake 尝试将 add_subdirectory() 添加到库 cmake 时,我收到诸如“CPack.cmake 已包含在内!!”之类的错误。和“找不到 CPack 自述资源文件”。所以,除非有一些聪明的技巧,否则我假设 add_subdirectory() 在这里不是一个现实的选择?将库的构建集成到我的项目构建中的最佳替代方案是什么?

我想到的几个想法是:

  1. 使用自定义命令动态生成库的 cmake 构建文件,然后使用更多自定义命令启动构建。

  2. 只需手动构建库并将预构建的二进制文件存储在我的项目中,以用于各种操作系统/架构/编译器组合。

想法?

最佳答案

最好的选择可能是使用 ExternalProject模块 - 特别是 ExternalProject_Add 函数。

这将允许您执行任何或所有操作:下载、更新/修补、配置、构建、安装和测试依赖库。它适用于任何构建系统,但显然特别适用于 CMake 项目。

如果您正在考虑执行您的选项 1 - 只考虑修改其他库的 CMakeLists.txt 以允许它通过 add_subdirectory 包含在您自己的项目中可能更容易

关于依赖于 cmake 项目的 Cmake 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32554069/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com