Open SideChannel opened 3 years ago
Unfortunately, I don't have easy access to Cygwin. But this seems to have to do with the __STRICT_ANSI__
warning and GCC 11. In fact the build system undefines __STRICT_ANSI__
explicitly for Cygwin (explicitly stating that it is a hack for Cygwin).
Maybe things have moved on since then? Could you please try to remove this "hack" on your machine and trying again?
Okay, from the original Makefile `# Compiler Flags
ABI_FLAGS = -U__STRICT_ANSI__ -fstack-protector -m64 -pthread LANG_FLAGS = -std=c++11 -D_REENTRANT `
I tried first only removing -USTRICT_ANSI, but still having -std=c++11. ==> Does not work. Only when I remove both -USTRICT_ANSI and -std=c++11, then Botan 2.18.2 compiles fine. Tested with Cygwin 3.3.1 from 2021-10-28 and gcc 11.2.0. I think the default with gcc 11 when no -std is given, is -std=gnu++17.
So, the recommendation in one of above clementine issues (drop both -std=c++0x and -U__STRICT_ANSI__) seems to be correct for recent gcc compilers. Problem solved. Thanks.
Botan 2.18.2 (and 2.18.1, too) does not build under Cygwin with gcc 11.2.0
System: Windows 10 Pro 21H1 19043.1320 (all patches installed) Cygwin 3.2.0 with gcc 11.2
After ./configure.py the Makefile of Botan contains
make seems to have problems with undefining STRICT_ANSI as we have a lot of warnings
However, compilation breaks with
I am not sure if the new Botan version is to blame or the new (since August in Cygwin) gcc 11.2. At least it used to work with older Botan and older (gcc 9.3) compiler. Under Linux (OpenSuSE Tumbleweed with gcc 11.2) everything works fine. (I did not compare the resulting Makefiles)