CMake相当于GNU make';s—目录(-C)

CMake相当于GNU make';s—目录(-C),cmake,command-line-interface,Cmake,Command Line Interface,我想知道是否有一个CMake命令行界面选项,它与GNU make的--directory(-C)功能相同 我想做的是告诉CMake在源目录中生成构建文件,而不是CWD中的 快速而肮脏的方法可能是: cd path/to/source && cmake . && make && make install 然而,必须有更好的办法 我在考虑 cmake --build "path/to/source" 但这需要存在构建文件,并且 cmake . -

我想知道是否有一个CMake命令行界面选项,它与GNU make的
--directory
-C
)功能相同

我想做的是告诉CMake在源目录中生成构建文件,而不是CWD中的


快速而肮脏的方法可能是:

cd path/to/source && cmake . && make && make install
然而,必须有更好的办法

我在考虑

cmake --build "path/to/source"
但这需要存在构建文件,并且

cmake . -E chdir "path/to/source"
在CWD中转储生成文件,如下所示:

cmake /path/to/source

由于CMake是一个构建系统生成器,它不是make的替代品,所以您的问题没有多大意义

但是所描述的行为是可以实现的。CMake有选项-H和-B来指定源目录和二进制目录,但它们没有文档记录。在你的情况下,这将是

cmake -Hpath/to/source -Bpath/to/source && cmake --build path/to/source

由于CMake是一个构建系统生成器,它不是make的替代品,所以您的问题没有多大意义

但是所描述的行为是可以实现的。CMake有选项-H和-B来指定源目录和二进制目录,但它们没有文档记录。在你的情况下,这将是

cmake -Hpath/to/source -Bpath/to/source && cmake --build path/to/source

对于那些无意中进入这个问题的人来说,基本上是一样的,但措辞要优雅得多。对于那些无意中进入这个问题的人来说,基本上是一样的,但措辞要优雅得多。