visual-studio - 在 Windows 10 上针对 Windows XP 构建 OpenCV 3.4.1

标签 visual-studio opencv windows-xp cmake-gui

我有一个使用 OpenCV 库的应用程序。此应用程序必须安装在运行 Windows XP 32 位的旧 PC 上。运行应用程序时出现错误:

Kernel32.dll unable to import InitializeCriticalSectionEx

根据我的搜索,要解决此问题,我必须通过将变量 _WIN32_WINNT 设置为 0x0501 来告诉编译器该库将在 Windows XP 上使用。我正在尝试应用在 this entry in github 中找到的解决方案,但我对编译器不是很有经验,而且我很难找到文件 CMAKE_CXX_FLAGSCMAKE_C_FLAGS。谁能准确解释我必须修改的文件?

我在 Windows 10 上使用 Visual Studio 2017 和 Cmake。

最佳答案

我尝试在 Visual Studio 中使用工具集 v140_xp,但没有成功。最后,我得到了一台装有 Windows XP 的旧 PC,安装了 Visual Studio 10 并尝试编译。问题是最新版本 (3.4.1) 无法针对 Windows XP 进行编译。 AFAIK,为 XP 编译的最新版本的 OpenCV 是 3.2。可能可以使用 v140_xp 工具集在 Windows 10 上交叉编译它,但我没有尝试,因为我已经使用 Visual Studio 10 获得了旧的 XP。

关于visual-studio - 在 Windows 10 上针对 Windows XP 构建 OpenCV 3.4.1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49690255/

相关文章:

python - ValueError: 'conv2d_2/convolution'的负尺寸大小是由2减去3引起的

c - 什么是事件句柄?

matlab - 当 MATLAB 真的很忙时,我该如何中断它?

visual-studio - 更改 Visual Studio 调试器日期格式

java - resharper 是否向 VS 添加了 Eclipse 没有的任何类型的代码重构?

visual-studio - Visual Studio 找到 systemjs typescript 定义,但无法在编译时找到它们

c++ - 对象检测 : Training Requried or No Training Required?

c++ - 在opencv中裁剪旋转图像

c++ - GetModuleFileName 的边缘情况不明确

visual-studio - Visual Studio 安装项目的良好替代品