【发布时间】:2015-04-19 03:24:05
【问题描述】:
我正在使用 OpenCV 包为异构目标(windows/Mac/Linux - 32 位和 64 位)开发 C++ 代码。
构建我的 c++ 所需的库:
- 明文
- OPenCV 并且两者都是为 64 位构建的。
我能够在 64 位构建环境中生成 64 位 exe/dll/.so。(为 64 位构建 opencv 和 mingw),同样适用于 32 位。
是否可以在 Windows 中使用 Mingw 和 OpenCV 在 64 位开发环境中创建 32 位应用程序?这里需要注意的是,我的支持 sdk 或库是用 64 位构建的。
【问题讨论】:
-
为什么不在论坛上问他们? answers.opencv.org/questions
-
是的,您可以使用 MingW/OpenCV 构建 32 位 exe,但是不,如果没有 32 位 mingw 工具集/标准库/SDK 并同时构建 OpenCV 和您的应用程序,您将无法做到这一点它。我不确定这是否能回答你的问题:]
-
@stiji 所以你的意思是说,所有的支持包(Mingw 和 Opencv)都必须为 32 位构建
-
确实如此。编译器为 32 位/64 位目标生成的代码不兼容。简化示例:32bit 代码中的指针通常为 4 个字节,但在 64 位代码中为 8 个字节。你不能指望它只是兼容。