当 Mingw 为 C++ 编译 OpenCV 时,我遇到错误?
i am getting error while mingw is compiling opencv for c++?
好的,我正在尝试为人类检测程序设置环境..编程语言我将使用C ++,编译器是代码块。 我已经下载了OpenCV 4.1 还下载了CMake 和明格 我还在环境设置中添加了路径。 我在 C:\OpenCV\sources 文件夹中提取了 OpenCV 通过使用 cmake,我在 c:\opencv\build 中配置并生成了构建文件
在此之后,我打开C:\opencv\source\opencv\build这个文件夹,右键单击它并打开PowerShell并输入mingw32-make commnd。
这样 Mingw 就会开始编译 OpenCV 但是在弹出 5% 的错误后...
PS C:opencvsourceopencvbuild> mingw32-make
[ 2%] 构建目标 zlib [ 2%]Building C object 3rdparty/libjpeg-turbo/CMakeFiles/libjpeg-turbo.dir/src/jmemmgr.c.obj C:\opencv\source\opencv\sources\3rdparty\libjpeg-turbo\src\jmemmgr.c: 在函数'realize_virt_arrays'中: C:\opencv\source\opencv\sources\3rdparty\libjpeg-turbo\src\jmemmgr.c:662:11:错误:"SIZE_MAX"未声明(首次在此函数中使用) 如果 (SIZE_MAX - maximum_space CMakeFiles/libjpeg-turbo.dir/src/jmemmgr.c.obj] 错误 1 CMakeFiles\Makefile2:312:目标"3rdparty/libjpeg-turbo/CMakeFiles/libjpeg-turbo.dir/all"的配方失败 mingw32-make[1]: * [3rdparty/libjpeg-turbo/CMakeFiles/libjpeg-turbo.dir/all] 错误 2 生成文件:161:目标"全部"的配方失败 mingw32-make: *** [全部] 错误 2
实际上可以通过 mingw32 编译 opencv 3.4.3(我使用了 5.3.0 作为实例)。请遵循本指南。它有点旧,但也适用于opencv 3.4.3 构建步骤:
- 从官方github存储库下载最新的Opencv版本(假设您已将opencv下载到磁盘上某处的"opencv"目录中)
- 转到opencv/modules/videoio/src,打开cap_dshow.hpp,粘贴 #define NO_DSHOW_STRSAFE(就在所有其他内容的顶部),保存文件以提交更改
- 安装 CMake(我用过 3.5.1)
- 打开CMake,点Opencv3.4.3源位置也指向要构建它们的位置(假设实例将是磁盘上的"build"目录sonwhere),按"配置按钮">
- 从"Mingw Makefiles"对话框中选择,然后等待 utill 源将被预处理
-
所有选项都是红色是正常的,在CMake窗口的右上角选中"分组",现在我们应该检查一些标志:
在组中 CMAKE:对于选项CMAKE_BUILD_TYPE写入发布(以构建 openCV 的发布版本),您也可以在此处指定构建后将安装的 Opencv 二进制文件的位置
在组中启用:选中ENABLE_CXX11和取消选中ENABLE_PRECOMPILED_HEADERS
在组中:取消选中WITH_MSMF
-
按"配置"按钮,直到处理完成,现在所有选项都应变为白色
-
按"生成"按钮并等待(在您的构建目录中应该创建 Makefile,您可以在此步骤后关闭 CMake)
-
让舒尔成为您的系统已知的 mingw 工具链位置(查看系统环境变量 PATH 是否包含 mingw 工具链的路径)
-
打开cmd.exe,将目录更改为opencv的构建目录
-
让我们构建 opencv (-j[uint] - 选项指定要使用的线程数)
.../build> mingw32-make -j4
-
让我们安装 opencv
.../build> mingw32-make install
-
做
- 我在 C++ 代码中遇到错误警告:控制到达非空函数 [-Wreturn 类型] 的末尾
- 我在 ndk 中构建文件时遇到错误 android.mk
- 我们在批处理模式下使用 G++ 时遇到错误
- 在visual Studio中构建代码时,我遇到错误,.h文件丢失
- 学习C++并在早期示例中遇到错误(在非静态数据成员之前需要构造函数)
- 可中断线程类 C++11 - 遇到错误?
- 在尝试在同一类内部进行课程矢量时,我会遇到错误
- 使用向量和结构在C 中遇到错误
- 我正在尝试安装游戏引擎,但遇到错误
- 使用 bazel 从源代码构建张量流服务遇到错误:C++规则'@org_tensorflow//…'编译失败(出口 4)
- 为什么尝试这样的类代码时会遇到错误?我初学者对不起
- 当 Mingw 为 C++ 编译 OpenCV 时,我遇到错误?
- 遇到错误试图在功能型参数中使用void函数的错误
- 尝试使用Boost和Ncurses库进行编译程序时会遇到错误
- 我在使用C 的Hangman游戏中遇到错误
- 为什么我在加载共享库时遇到错误
- 我在 c++ 中遇到错误'PTHREAD_START_ROUTINE'未在此范围内声明
- 学习如何在遇到错误'variable not declared in scope'的 c++ 中使用指针
- 如果遇到错误,如何重复代码
- 当我尝试将UDP套接字绑定到带有SFML的端口时,为什么会遇到错误