during make of gzip 1.3.13 the following issues are seen on Solaris 8 x86 with Sun Studio 11 C compiler and all recent patches :
$ make Making all in lib gmake[1]: Entering directory `/build/gzip/i386/SunOS5.8/generic/lib' GEN configmake.h GEN fcntl.h GEN getopt.h GEN math.h GEN stdbool.h GEN stdint.h GEN stdio.h GEN stdlib.h GEN string.h GEN sys/stat.h GEN time.h GEN unistd.h GEN wchar.h gmake all-recursive gmake[2]: Entering directory `/build/gzip/i386/SunOS5.8/generic/lib' gmake[3]: Entering directory `/build/gzip/i386/SunOS5.8/generic/lib' CC close-hook.o CC freadahead.o CC freading.o CC fseterr.o CC localcharset.o CC printf-frexp.o CC printf-frexpl.o CC xalloc-die.o CC asnprintf.o CC close-stream.o CC closein.o CC closeout.o CC creat-safer.o CC dup-safer.o CC error.o CC exitfail.o CC fd-safer.o CC fprintf.o CC fpurge.o CC frexpl.o CC getopt.o CC getopt1.o CC isnanf.o CC isnanl.o CC lstat.o CC mbrtowc.o CC mbsinit.o CC open.o CC open-safer.o CC pipe-safer.o CC printf.o CC printf-args.o CC printf-parse.o CC quotearg.o CC signbitd.o CC signbitf.o CC signbitl.o CC stat.o CC strerror.o CC utimens.o CC vasnprintf.o "../../../../gzip-1.3.13/lib/vasnprintf.c", line 2387: warning: argument #3 is incompatible with prototype: prototype: pointer to struct __mbstate_t {array[6] of int __filler} : "/usr/include/iso/wchar_iso.h", line 194 argument : pointer to int "../../../../gzip-1.3.13/lib/vasnprintf.c", line 2432: warning: argument #3 is incompatible with prototype: prototype: pointer to struct __mbstate_t {array[6] of int __filler} : "/usr/include/iso/wchar_iso.h", line 194 argument : pointer to int "../../../../gzip-1.3.13/lib/vasnprintf.c", line 2563: warning: argument #3 is incompatible with prototype: prototype: pointer to struct __mbstate_t {array[6] of int __filler} : "/usr/include/iso/wchar_iso.h", line 194 argument : pointer to int "../../../../gzip-1.3.13/lib/vasnprintf.c", line 2592: warning: argument #3 is incompatible with prototype: prototype: pointer to struct __mbstate_t {array[6] of int __filler} : "/usr/include/iso/wchar_iso.h", line 194 argument : pointer to int CC vfprintf.o CC xmalloc.o CC yesno.o AR libgzip.a GEN charset.alias GEN ref-add.sed GEN ref-del.sed gmake[3]: Leaving directory `/build/gzip/i386/SunOS5.8/generic/lib' gmake[2]: Leaving directory `/build/gzip/i386/SunOS5.8/generic/lib' gmake[1]: Leaving directory `/build/gzip/i386/SunOS5.8/generic/lib' Making all in doc gmake[1]: Entering directory `/build/gzip/i386/SunOS5.8/generic/doc' gmake[1]: Nothing to be done for `all'. gmake[1]: Leaving directory `/build/gzip/i386/SunOS5.8/generic/doc' gmake[1]: Entering directory `/build/gzip/i386/SunOS5.8/generic' CC bits.o CC crypt.o CC deflate.o CC gzip.o CC inflate.o CC lzw.o CC trees.o CC unlzh.o CC unlzw.o CC unpack.o CC unzip.o CC util.o CC zip.o CCLD gzip Undefined first referenced symbol in file __printf__ gzip.o ld: fatal: Symbol referencing errors. No output written to gzip gmake[1]: *** [gzip] Error 1 gmake[1]: Leaving directory `/build/gzip/i386/SunOS5.8/generic' gmake: *** [all-recursive] Error 1 Looks like some issue related the the use of GNU C keyword __attribute__ in code that should probably be standard K&R C or even ISO/IEC 9899:1999. Not sure how to fix this but some clean up work needs to be done .. comments like : /* In GNU libc we want do not want to use the common name `error' directly. Instead make it a weak alias. */ extern void __error (int status, int errnum, const char *message, ...) __attribute__ ((__format__ (__printf__, 3, 4))); extern void __error_at_line (int status, int errnum, const char *file_name, unsigned int line_number, const char *message, ...) __attribute__ ((__format__ (__printf__, 5, 6)));; The double ;; at the end there and the double negative comment causes me to think that perhaps this code has never been looked at by anyone? Paul