cmake在构建过程中使用另一个工具检测标志

cmake detect flags during build using another tool

本文关键字:另一个 工具 检测 标志 构建 过程中 cmake      更新时间:2023-10-16

我遇到了一个问题,如何使用cmake将第三方依赖库添加到链接命令中。目前,我的cmake构建执行以下操作:

  • 从git获取第三方库并构建它(ExternalProject_Add(
  • 在构建了第三方libarry之后,它提供了自定义的二进制文件(名为"config++"(,允许使用以下命令调用它自变量:
    • "配置++--cppflags"-获取用于使用库编译
    • "config++--ldflags"-获取库路径构建期间库的放置位置
    • "config++--libs"-以获取到的库列表(包括静态库和共享依赖库(与libary链接时使用

(是的,config++,它与pkg配置非常相似。(

由于第三方库构建是在项目构建期间完成的,而我之前没有准备好config++,在执行"cmake-build"时,有没有任何方法可以动态检测要传递给编译/链接命令的CXXFLAGS/LDFLAGS(通过调用"config++"(?

谢谢。

您可以使用CMake命令execute_process运行外部程序,然后将其输出收集到一个变量中,然后将该变量附加到构建标志中。

相关文章: