开发者

Makefile: Error1

I have a very simple c programme:

int main()
{
  return(1);
}

and a simple Makefile:

all:
    gcc -ansi -pedantic -o 开发者_StackOverflow社区tmp tmp.c
    ./tmp

However, when I type make I get the following error message:

$ make
gcc -ansi -pedantic -o tmp tmp.c
./tmp
make: *** [all] Error 1

What obvious thing am I missing?


Make exits with an error if any command it executes exits with an error.

Since your program is exiting with a code of 1, make sees that as an error, and then returns the same error itself.

You can tell make to ignore errors by placing a - at the beginning of the line like this:

-./tmp

You can see more about error handling in makefiles here.


You're returning an error code of 1 from your application. It's Make's job to report this as an error!


This is because your program is returning 1.

Makes does the compilation using gcc, which goes fine (returns 0) so it proceeds with the execution, but your program return a non-zero value, so make reports this as an error.

A program on successful completion should return 0 and return a non-zero value otherwise.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜