【问题标题】:Naming CMake Targets by directory按目录命名 CMake 目标
【发布时间】:2012-11-27 01:33:02
【问题描述】:

我是 CMake 新手,遇到了一些麻烦。是否可以根据创建目标的目录命名 CMake 目标?例如,我想将我的库写入一个 lib/ 目录,以呼应我的源目录结构。

假设我有源目录 dir1 和 dir2,并且都创建了一个库 libmylib.a 通常 CMake 可能会抱怨创建具有相同名称的库/目标,但是如果这些库被写入 lib/dir1/libmylib.a 和 lib /dir2/libmylib.a 然后你可以在你的 CMakeLists.txt 文件中将这些目标作为 dir1/libmylib 和 dir2/libmylib 引用(大概)而不会发生冲突。

【问题讨论】:

    标签: cmake


    【解决方案1】:

    在 CMake 中,逻辑库名可以与目标生成的文件名完全解耦。在您的目标名称中包含/ 没有问题。你可以像这样添加你的库:

    add_library(dir1/mylib STATIC source1 source2 ...)
    set_property(TARGET dir1/mylib PROPERTY OUTPUT_NAME mylib)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-23
      • 2023-01-25
      • 1970-01-01
      • 2016-03-30
      • 2016-08-02
      • 2017-01-14
      • 1970-01-01
      相关资源
      最近更新 更多