Suricata compilation on windows / mingw
It seems that in some cases a simple upgrade of the MinGW environment can make Suricata compilation fail.
CC util-unittest.o CC util-unittest-helper.o CC util-affinity.o CC util-var.o CC util-var-name.o CC win32-syscall.o CC win32-misc.o CC win32-service.o CCLD suricata.exe C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: ../libhtp/htp/.libs/libhtp.a(htp_multipart.o): in function `strncat': C:/msys64/mingw64/x86_64-w64-mingw32/include/string.h:246: undefined reference to `__strncat_chk' collect2.exe: error: ld returned 1 exit status make: *** [Makefile:1291: suricata.exe] Error 1 make: Leaving directory '/home/Administrator/suricata-5.0.0/src' make: *** [Makefile:499: all-recursive] Error 1 make: Leaving directory '/home/Administrator/suricata-5.0.0' make: *** [Makefile:425: all] Error 2
In this case MinGW was updated simply with
The same Suricata source was working/compiling under MinGW before the environment/pkg upgrade.
I have tried to do different combinations of compiles (4.1.5/5.0/git/different versions of libhtp) they all fail.
This is on Windows 2016 and Win 10 as well - regardless of win upgrade/os versions.
It seems it just is related to just the MinGW package/tools versioning. (which was never an issue before)