mediapipe
mediapipe copied to clipboard
When compiling under Windows, the following error occurs
OS Platform and Distribution
windows 10
Compiler version
bazel-7.6.1,vc2022
Programming Language and version
c++
Installed using virtualenv? pip? Conda?(if python)
python-3.12.10
MediaPipe version
MediaPipe v0.10.24
Bazel version
No response
XCode and Tulsi versions (if iOS)
No response
Android SDK and NDK versions (if android)
No response
Android AAR (if android)
None
OpenCV version (if running on desktop)
OpenCV 3.4.10
Describe the problem
When compiling under Windows, the following error occurs, likely due to using OpenCV 3.4.10 for compilation
Complete Logs
mediapipe/calculators/video/opencv_video_decoder_calculator.cc(116): error C2039: "CAP_PROP_ORIENTATION_AUTO": is not a member of "cv"
external/windows_opencv/include\opencv2/videoio.hpp(71): note: see declaration of "cv"
mediapipe/calculators/video/opencv_video_decoder_calculator.cc(116): error C2065: CAP_PROP_ORIENTATION_AUTO: undeclared identifier
Hi @dannisliang,
Can you please share the exact instructions or commands you are following from our documentation here?
Also, can you confirm whether you are using Bazel 7.6.1? This version is not currently supported. The supported version is Bazel 6.5.0, as specified here.
Additionally, were you able to successfully build the Hello World example from the same documentation?
Please provide the complete error log you’re encountering so we can assist further.
Thank you!!
This is unrelated to issue (#5975). After changing the Bazel version to 6.5.0, the issue (#5975) seems to no longer occur. However, the following errors still persist: ERROR: C:/users/_bazel_admin/vrlotbeo/external/XNNPACK/BUILD.bazel:669:36: Compiling src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c failed: (Exit 2): cl.exe failed: error executing command (from target @XNNPACK//:avxvnniint8_prod_microkernels) D:\program files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64\cl.exe /nologo /DCOMPILER_MSVC /DNOMINMAX /D_WIN32_WINNT=0x0601 /D_CRT_SECURE_NO_DEPRECATE ... (remaining 80 arguments skipped) qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(132): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(133): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(134): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(135): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(136): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(137): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(138): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(139): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(140): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(141): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(143): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(144): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(145): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(146): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(147): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(148): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(149): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(150): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(151): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(152): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(173): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(174): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(175): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(176): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(177): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(178): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(179): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(180): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(181): error C2440: “=”: 无法从“int”转换为“__m256i” external/XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnniint8-prfm.c(182): error C2440: “=”: 无法从“int”转换为“__m256i” Target //mcl:mcl failed to build Use --verbose_failures to see the command lines of failed build steps. INFO: Elapsed time: 251.231s, Critical Path: 55.57s INFO: 1171 processes: 1057 internal, 114 local. FAILED: Build did NOT complete successfully Error building library...!!!
I'm trying to solve this issue, and I realized the _mm256_dpbusd_avx_epi32 function is not enabled.
and It seems to be an issue with XNNPACK itself.
I updated XNNPACK to the latest commit, but another error occured in a different module.
C:\users\me\_bazel_me\kwqutj5l\execroot\mediapipe\external\pthreadpool\src\threadpool-atomics.h(14): fatal error C1083: Cannot open include file: 'stdatomic.h': No such file or directory
it seems the Mediapipe project does not check the Windows build.
The root cause of the original error is the wrong OpenCV version specified in the documentation. Here is the issue with explanation: https://github.com/google-ai-edge/mediapipe/issues/5876. I prepared the documentation fix, which has been awaiting code review for months: https://github.com/google-ai-edge/mediapipe/pull/5877.