一尘不染

在执行之前制作CMake打印命令

linux

我正在使用Linux上的CMake构建的大型C ++项目。CMake运行正常,在模块和应用程序树中生成大量的Makefile。运行GNU
make会导致链接器错误。我如何make在运行命令之前先打印出确切的命令?

-d选项不会打印命令,但是很多信息并没有帮助。

-n选项显示所有命令,但不运行它们,因此我无法确定问题出在哪里。从make -n检查stdout,我看不到任何相关的命令。我怀疑某些命令会根据早期命令的结果进行更改,并且Makefile的层次结构使您很难分辨出实际情况。

我没有在make的 手册 页中看到其他似乎有用的选项。


阅读 495

收藏
2020-06-03

共1个答案

一尘不染

我相当确定这会起作用:

make VERBOSE=1

您还应该能够将其添加到CMakeLists.txt中,以将其永久设置为:

set(CMAKE_VERBOSE_MAKEFILE on)

CMake常见问题解答对此进行了介绍。

2020-06-03