uClibc-ng declares program_invocation_name as const. This causes the build failure below:
error_prints.c:40:14: error: conflicting types for ‘program_invocation_name’ extern char *program_invocation_name; ^~~~~~~~~~~~~~~~~~~~~~~ In file included from error_prints.c:32:0: .../output/host/x86_64-buildroot-linux-uclibc/sysroot/usr/include/errno.h:54:20: note: previous declaration of ‘program_invocation_name’ was here extern const char *program_invocation_name, *program_invocation_short_name; ^~~~~~~~~~~~~~~~~~~~~~~ Makefile:3856: recipe for target 'strace-error_prints.o' failed Declare program_invocation_name only when the C library does not provide one. --- error_prints.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/error_prints.c b/error_prints.c index 8519b9246698..710e99b04ab9 100644 --- a/error_prints.c +++ b/error_prints.c @@ -37,7 +37,9 @@ #include "error_prints.h" +#ifndef HAVE_PROGRAM_INVOCATION_NAME extern char *program_invocation_name; +#endif static void verror_msg(int err_no, const char *fmt, va_list p) -- 2.14.1 ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Strace-devel mailing list Strace-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/strace-devel