mingw on RHEL 9 needs -fstack-protector (which adds -lssp), or it fails
with these errors:
undefined reference to `__stack_chk_fail'
undefined reference to `__stack_chk_guard'
undefined reference to `__strcpy_chk'
Commit
8d35b2eceabafbe13458101f8701e3fc49f15d63 mentions that the build
fails with -fstack-protector-strong. Perhaps that only applied to
earlier Ubuntu versions, because Ubuntu Focal can build with
-fstack-protector-strong now.
Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
-D_FORTIFY_SOURCE=2)
endif()
endif()
- if(NOT WIN32)
CHECK_C_COMPILER_FLAG(-fstack-protector-strong HAS_STACK_PROTECT)
if (HAS_STACK_PROTECT)
add_compile_options(-fstack-protector-strong)
+ if(WIN32)
+ add_link_options(-fstack-protector-strong)
+ endif(WIN32)
endif()
- endif(NOT WIN32)
endif(CMAKE_CXX_COMPILER_ID STREQUAL GNU)
CHECK_C_COMPILER_FLAG("-D_GLIBCXX_ASSERTIONS" HAS_GLIBCXX_ASSERTIONS)
$sslDir/bin/libssl-1_1-x64.dll
$mingwTargetLibDir/libstdc++-6.dll
$mingwTargetLibDir/libgcc_s_seh-1.dll
+ $mingwTargetLibDir/libssp*.dll
$mingwLibpthreadDir/libwinpthread-1.dll
$boostDir/lib/*.dll)
echo "Copying required dlls to $binDir."