我在Centos上使用cmake3(版本3.6.1)。在以前的CMake版本中,我可以使用-B
选项指定构建目录:
cmake -GNinja -B build
这样,所有临时文件(例如CMakeCache.txt
)都存储在build文件夹中。现在有了cmake3,我不再看到-B
选项。有其他选择吗?
答案 0 :(得分:1)
在documentation中的CMake 3.6.X命令行选项中,-B
选项的确没有列出:
cmake [<options>] (<path-to-source> | <path-to-existing-build>)
但是,功能仍然存在。您仍然可以使用-B
指定构建目录的位置(当前目录为默认目录)。对于许多CMake发行版,此选项以及用于指定源目录的-H
是两个 undocumented 命令行选项(请参见this答案)。
由于支持-B
选项的功能得以保留,并且仍然经常使用,因此CMake将其重新添加到CMake 3.13的文档中。最新的documentation描述了一直存在的-B
行为:
cmake [<options>] -S <path-to-source> -B <path-to-build>
使用
<path-to-build>
作为构建树,使用<path-to-source>
作为源树。指定的路径可以是绝对路径,也可以是相对于当前工作目录的路径。源树必须包含一个CMakeLists.txt
文件。如果构建树尚不存在,则会自动创建。例如:$ cmake -S src -B build