I have an application that uses the OpenCV libraries. This application has to be installed on an old PC running Windows XP 32 bit. When running the application I got the error:
Kernel32.dll unable to import InitializeCriticalSectionEx
According to my searches, to fix this issue, I have to tell the compiler that the library will be used on Windows XP by setting the variable _WIN32_WINNT
to 0x0501
. I'm trying to apply the solution found in this entry in github, but I'm not very experienced with compilers and I'm having hard time to locate the files CMAKE_CXX_FLAGS
and CMAKE_C_FLAGS
. Can anyone explain me exactly what file I have to modify?
I'm using Visual Studio 2017 and Cmake on Windows 10.
I tried to use the toolset v140_xp in Visual Studio, but without success. At the end of the day, I got an old PC with Windows XP, installed Visual Studio 10 and tried to compile. The problem was that the latest version (3.4.1) won't compile for Windows XP. AFAIK, the most recent version of OpenCV that compiles for XP is 3.2. Probably it is possible to cross-compile it on Windows 10 using the v140_xp toolset, but I did not try as I already got the old XP with Visual Studio 10.