【问题标题】:cmake, several questionscmake,几个问题
【发布时间】:2011-07-29 14:38:30
【问题描述】:

我是 cmake 的新手。 有没有什么好的教程可以深入探讨这个问题? 有没有关于 cmake 的“良好实践”的文章? 这里有关于所有 cmake 命令及其作用的任何好的概述吗?在我看来,原始的 cmake 文档相当混乱和混乱......

现在说点更具体的: 据我所知,您必须告诉 cmake every 应该编译的源文件 (.cpp)。是否可以简单地告诉“只需编译您在文件夹 /src 中找到的所有内容”(就像您可以简单地定义一个包含文件夹而无需定义每个 .h 文件)?

告诉 cmake 也编译不在 /src 目录中的文件的最佳方法是什么?我有另一个用于外部源代码的文件夹,它也有子目录和所有内容。我是否必须(再次..)将每个 .cpp 文件写入 cmake 脚本,让它知道也应该编译外部代码?

基本上,我正在寻找将新的源/头文件添加到项目中的最快和最好的方法,而无需不断调整 cmake 文件。

【问题讨论】:

    标签: c++ cmake


    【解决方案1】:

    您可以只使用 glob *.cpp *.h 等,但如果您的文件列表发生更改,CMake 不会注意到,除非您触摸您的 CMakeLists.txt 文件。

    不过,最佳做法是不断调整 CMake 文件。如果您列出文件,您将获得一致的行为,这才是真正重要的。

    在实践中真的没有那么多工作,真的。

    对每个目录使用CMakeLists.txt 文件,并使用add_subdirectory 通常是管理它的最简单方法。这样您就不会处理超出当前和子范围的路径。

    这是CMake Tutorial

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-06-30
      • 2015-01-03
      • 2010-10-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多