我有一个奇怪的行为,我的make
命令。为什么“make”不回应任何内容?
它在执行前不打印命令行。 我知道在命令行之前存在-s
,--silent
和--quiet
选项或使用@
。我没有使用它们中的任何一个。
例如,一个非常基本的Makefile:
[email protected]:~$ make
[email protected]:~$
另一台计算机上执行:我的电脑上
all:
touch toto.txt
rm toto.txt
执行
[email protected]:~$ make
touch toto.txt
rm toto.txt
[email protected]:~$
化妆的版本是一样的在这两台电脑上:
[email protected]:~$ make -version
GNU Make 3.81
...
打印命令行是默认行为(https://www.gnu.org/software/make/manual/html_node/Echoing.html),我没有使用任何特殊配置。
有人知道为什么我的make
执行但不回显命令行?
PS:
- 我没有文件或目录名为“所有”
- 如果我删除
rm toto.txt
是没有任何化妆的呼应创建的文件。
PPS:
这些输出的最后几行,当我发出
make -d
:Considering target file `all'. File `all' does not exist. Finished prerequisites of target file `all'. Must remake target `all'. Need a job token; we don't have children Putting child 0x01144970 (all) PID 7478 on the chain. Commands of `all' are being run. Live child 0x01144970 (all) PID 7478 Reaping winning child 0x01144970 PID 7478 Removing child 0x01144970 PID 7478 from chain. Considering target file `all'. File `all' was considered already.
试试'make -d' ... – reinierpost 2015-03-03 16:00:45
这里是'make -d'输出:http://pastebin.com/kwt41E15。对我来说没有任何问题。 – Oneil67 2015-03-04 09:25:54
我已将最后一行复制到您的答案中。它表示它调用命令来创建'all'目标,但不显示它们;我认为它应该。如果你想在这里帮助一些读者,用'env LANG = en_US make -d'重试。 – reinierpost 2015-03-04 09:35:33