【问题标题】:How to automatically add header files to project?如何自动将头文件添加到项目中?
【发布时间】:2010-09-21 12:15:35
【问题描述】:

我将如何拥有一个 CMake 构建系统,它现在使用 AUX_SOURCE_DIRECTORY 扫描源文件,也在同一目录中扫描头文件,最好使用类似的命令?

我还没有在文档中找到一种简单的方法来执行此操作,所以我现在有一个糟糕的 bash 脚本来对我的 (CodeBlocks) 项目文件进行后处理...

【问题讨论】:

    标签: build-process cmake codeblocks


    【解决方案1】:

    您可以使用 file(GLOB ... ) 命令。例如:

    set(dir my_search_dir)
    file (GLOB headers "${dir}/*.h")
    message("My headers: " ${headers})
    

    此命令还可以递归并列出相对于给定路径的文件。请参阅 cmake 文档中的 "file" command entry

    【讨论】:

      【解决方案2】:

      AUX_SOURCE_DIRECTORY 的文档表明它不打算以这种方式使用,所以我宁愿怀疑你所问的是否可能。如果您想要一个权威的答案,您可以通过 cmake@cmake.org 联系 CMake 开发人员(他们实际上非常好相处)。

      我强烈建议不要使用通配符来指定构建中包含的内容。构建文件应该指定库的确切内容,而不是依赖于目录中发生的情况。一开始可能会很麻烦(如果您习惯了通配符,或者工作方式相同的 IDE),但是当您习惯了它时,您就不想用其他方式了。

      【讨论】:

        猜你喜欢
        • 2015-06-17
        • 2013-01-12
        • 1970-01-01
        • 2023-03-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-02-11
        • 2021-12-06
        相关资源
        最近更新 更多