CMake 命令行选项文档

15

我正在学习CMake,阅读《精通CMake》书籍和其他在线资料。我想知道是否有一份详细的文档来解释一些命令行选项,例如由生成文件使用的-H和-B,或者“-E echo”是否有附加的颜色选项等等。我尚未找到相关文档。

目前我看到的是CMake版本3.14.4:

$ cmake --help
  ...
  cmake [options] -S <path-to-source> -B <path-to-build>
  ...
  -S <path-to-source>          = Explicitly specify a source directory.
  -B <path-to-build>           = Explicitly specify a build directory.
  ...

这是官方版本的 -H 和 -B 吗?


2
对于已记录的选项,请参考 https://cmake.org/cmake/help/v3.2/manual/cmake.1.html#options,对于未记录的选项(例如 -H-B),请参考互联网上的资源(如 https://dev59.com/xl0Z5IYBdhLWcg3wwyne 和 https://dev59.com/eWYr5IYBdhLWcg3wYpUg#13713684)。 :) - mlvljr
3个回答

13

感谢Dave提供这些信息。说实话,我对一些隐藏的命令行选项非常感兴趣,因为它们有助于我的一些组合项目。特别是彩色回显输出的可能性有助于阅读makefile消息。而使用-B和-H调用cmake进行无源代码构建的可能性也非常有趣。也许你会在未来的版本中发布它。祝好,Andi - Andi
5
你为什么要这样做?你为什么要故意让事情变得困难? - mmr
我不认为CMake的开发人员有意让事情变得困难。而且我非常确定这不是他们的目标之一... - DLRdave
@DLRdave 或许你可以提供这些选项在源代码中的位置,以供有兴趣的人参考? - jwalk

3

CMake文档在此期间明显得到了改进,但-H<directory>-B仍然被隐藏,可能是出于好的原因(它们不应该在CMake开发环境之外使用)。

-H<directory>-B都在这里进行了说明。

对于cmake -E,选项在这个部分中记录。


我无法确认你对于-H和-B的疑问。我使用CMake 3.5.1版本,并带有这些选项,它仍然有效。如果你尝试只用“cmake -H”,它会打印帮助信息,但是例如使用“cmake -H.”则会显示错误消息,如“CMake Error: The source directory ... does not appear to contain CMakeLists.txt.”。-B也没问题。 - Andi
如果它没有文档说明,你就不能依赖它。他们随时可能会更改或破坏它。 - usr1234567
@usr1234567 没错! - Antonio

1

可能不行。你可能需要查看CMake的源代码。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接