我使用Makefile运行一个程序,它给了我一个奇怪的错误,虽然成功执行了。 make: *** [test] Error 10
这是我的Makefile代码
30
31 test:
32 @ echo
33 @ echo "Testing Electric Fence."
34 @ echo "After the last test, it should print that the test has PASSED."
35 ./eftest
36 ./tstheap 3072
37 @ echo
38 @ echo "Starting test for time-interval-measurement."
39 export EF_ERRTRACK_START=3; export EF_ERRTRACK_END=5; ./time-interval-measurement-test
40 @ echo
41 @ echo "Electric Fence confidence test PASSED."
42 @ echo
执行时:
Time interval measurement test: PASSED
make: *** [test] Error 10
-bash-3.2# make test
答案 0 :(得分:3)
要解决此问题(如果您无法修改二进制文件的(返回/退出)行为),请使用
./exec || /bin/true
答案 1 :(得分:1)
[foo]错误NN'
这些错误根本不是真正的错误。它们意味着作为配方的一部分调用的程序返回非0错误代码('错误NN'),这使得解释为失败,或者以某种其他异常方式退出(具有某种类型的信号)。见Errors In Recipes.
如果消息没有附加** *,则子进程失败,但makefile中的规则以 - 特殊字符为前缀,因此忽略错误。
http://www.gnu.org/s/hello/manual/make/Error-Messages.html
因此,您的一个命令返回非零错误代码。
答案 2 :(得分:0)
您的一个命令退出时出错。不是echo
,其他是{{1}}。检查一下。