I have a very simple c programme:
int main()
{
return(1);
}
and a simple Makefile:
all:
gcc -ansi -pedantic -o tmp tm
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.