This problem was reported (with a workaround) by Andrej.Borsenkow@mow.siemens.ru on Thu May 30th. The fix was to add the line #include "stdio.h" to cfg-grammer.c I don't know if this is the right thing to do because there is conflicting advice Bazsi said it would be save to include it, but in the cfg-grammer.c file there is a comment saying: # include <stdio.h> /* INFRINGES ON USER NAME SPACE */ I just wanted to remind the (kind & generous) programmers of this issue for those of us who are not C programmers so that the "proper" fix for this doesn't get forgotten in the next version release. On RedHat 7.3 with latest patches. With libol 0.3.3 Compiling 1.5.17 works fine (see http://www.umialumni.com/~ben/compile-output-syslog-ng.1.5.17.txt ) Compiling 1.5.18 doesn't (see http://www.umialumni.com/~ben/compile-output-syslog-ng.1.5.18.txt ) Summation: gcc -DHAVE_CONFIG_H -I. -I/usr/src/redhat/BUILD/syslog-ng-1.5.18/src -I. -O2 -march=i386 -mcpu=i686 -Wall -I/usr/local/include/libol -D_GNU_SOURCE -c cfg-grammar.c cfg-grammar.y: In function `yyerror': cfg-grammar.y:703: warning: implicit declaration of function `fprintf' cfg-grammar.y:703: `stderr' undeclared (first use in this function) cfg-grammar.y:703: (Each undeclared identifier is reported only once cfg-grammar.y:703: for each function it appears in.) make[3]: *** [cfg-grammar.o] Error 1 make[3]: Leaving directory `/usr/src/redhat/BUILD/syslog-ng-1.5.18/src' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/usr/src/redhat/BUILD/syslog-ng-1.5.18/src' make[1]: *** [all-recursive-am] Error 2 make[1]: Leaving directory `/usr/src/redhat/BUILD/syslog-ng-1.5.18/src' make: *** [all-recursive] Error 1 error: Bad exit status from /var/tmp/rpm-tmp.39527 (%build) -Ben.