好的,我正在尝试为人类检测程序设置环境。我将使用的编程语言是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:\opencv\source\opencv\build> mingw32-make
[2%]建立目标zlib [2%]构建C对象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-最大空间<新空间) ^ ~~~~~~~~ C:\ opencv \ source \ opencv \ sources \ 3rdparty \ libjpeg-turbo \ src \ jmemmgr.c:662:11:注意:每个未声明的标识符对于出现在每个函数中仅报告一次 3rdparty \ libjpeg-turbo \ CMakeFiles \ libjpeg-turbo.dir \ build.make:678:目标'3rdparty / libjpeg-turbo / CMakeFiles / libjpeg-turbo.dir / src / jmemmgr.c.obj'的配方失败 mingw32-make [2]: * [3rdparty / libjpeg-turbo / 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 Makefile:161:目标“全部”的配方失败 mingw32-make:*** [全部]错误2
答案 0 :(得分:0)
实际上,可以通过mingw32编译opencv 3.4.3(我已为实例使用5.3.0)。请遵循本指南。它有点旧,但即使在opencv 3.4.3中也可以使用 建立步骤:
所有选项均为红色是正常的,请在CMake窗口的右上方区域选中“分组”,现在我们应该检查一些标志:
在CMAKE组中:对于选项CMAKE_BUILD_TYPE,请写Release(以生成opencv的发行版本),也可以在此处指定要在构建后将Opencv二进制文件安装的位置
在ENABLE组中:选中ENABLE_CXX11并取消选中ENABLE_PRECOMPILED_HEADERS
与WITH一起的组:取消选中WITH_MSMF
按下“配置”按钮,直到处理完成,现在所有选项都将变为白色
按下“生成”按钮并等待(应在您的构建目录中创建Makefile,此步骤后您可以关闭CMake)
确保您的mingw工具链位置对于您的系统是已知的(查看系统环境变量PATH是否包含mingw工具链的路径)
打开cmd.exe,将目录更改为opencv的构建idrectory
让我们构建opencv(-j [uint]-选项指定要使用的线程数)
... / build> mingw32-make -j4
让我们安装opencv
... / build> mingw32-make install
完成