Getting the following error trying to build pngcrush 1.8.13 in Windows 11 using MSYS2.
(btw, is there a compiled WIN64 binary available somewhere? Can't find one, and that would be so much easier.)
$ make
Makefile:82: warning: ignoring prerequisites on suffix rule definition
gcc -c -DLIBPNG_UNIFIED -I. -DNO_GZ -DPNGCRUSH_TIMERS=11 -DPNGCRUSH_USE_CLOCK_GETTIME=1 -DPNGCRUSH_USE_ARM_NEON -DPNGCRUSH_USE_MPS_MSA -DPNGCRUSH_USE_INTEL_SSE -DPNG_INTEL_SSE -DPNGCRUSH_USE_POWERPC_VSX -std=c90 -O3 -funroll-loops -fomit-frame-pointer adler32.c
In file included from adler32.c:8:
zutil.h:33:17: error: conflicting types for 'ptrdiff_t'; have 'long int'
33 | typedef long ptrdiff_t; / guess -- will be caught if guess is wrong /
| ^~~~~~~~~
In file included from C:/msys64/mingw64/include/crtdefs.h:10,
from C:/msys64/mingw64/include/stddef.h:7,
from C:/msys64/mingw64/lib/gcc/x86_64-w64-mingw32/15.1.0/include/stddef.h:1,
from zconf.h:247,
from zlib.h:34,
from zutil.h:22:
C:/msys64/mingw64/include/corecrt.h:88:35: note: previous declaration of 'ptrdiff_t' with type 'ptrdiff_t' {aka 'long long int'}
88 | __MINGW_EXTENSION typedef __int64 ptrdiff_t;
| ^~~~~~~~~
make: *** [Makefile:82: adler32.o] Error 1