假设我有一个名为foo
项目,下/foo/src
来源。另外,假定在过去的某个时候,有人跑cmake /foo/src
,所以有没有建立文件。
现在,我想执行foo
的构建,在/foo/build
。但是,如果我cd /foo/build; cmake /foo/src
- 它把/foo/src
作为构建目录,并配置和生成,有建文件,而不是在当前目录中。
问题:
/foo/src
文件,以删除CMake的配置和生成/foo/build
构建文件?/foo/build
未经/foo/src
删除任何内容?足够的,虽然也许不是最小的,设置文件删除:
CMakeCache.txt
Makefile
cmake_install.cmake
CMakeFiles/
如果你还启用了测试,那么
CTestTestfile.cmake
Testing/
tests/CTestTestfile.cmake
tests/Makefile
tests/cmake_install.cmake
tests/CMakeFiles/
如果执行
cmake -B/foo/build -H/foo/src
CMake的会忽略以前的版本,并在/foo/build
建设。你不需要它来发出这个命令时是你的当前工作目录。
这个答案的第二部分实际上可以this answer内发现