在cmake对opencv编译的时候出现错误
错误粘贴如下:
``
错误 一
Can’t detect runtime and/or arch
FP16: Compiler support is available
CMake Warning at cmake/OpenCVUtils.cmake:1020 (message):
Download: Local copy of opencv_ffmpeg.dll has invalid MD5 hash:
6048172a1d2ebdc53194abc93c0e7c4a (expected:
f081abd9d6ca7e425d340ce586f9c090)
Call Stack (most recent call first):
3rdparty/ffmpeg/ffmpeg.cmake:10 (ocv_download)
cmake/OpenCVFindLibsVideo.cmake:219 (include)
CMakeLists.txt:557 (include)
Downloading opencv_ffmpeg.dll…
CMake Error at cmake/OpenCVUtils.cmake:1043 (file):
file DOWNLOAD HASH mismatch
for file: [E:/Files/openCV/opencv/sources/3rdparty/ffmpeg/downloads/f081abd9d6ca7e425d340ce586f9c090/opencv_ffmpeg.dll]
expected hash: [f081abd9d6ca7e425d340ce586f9c090]
actual hash: [3108d97fa2ee09c8ee442db07b6367ca]
status: [28;“Timeout was reached”]
Call Stack (most recent call first):
3rdparty/ffmpeg/ffmpeg.cmake:10 (ocv_download)
cmake/OpenCVFindLibsVideo.cmake:219 (include)
CMakeLists.txt:557 (include)
CMake Error at cmake/OpenCVUtils.cmake:1047 (message):
Failed to download opencv_ffmpeg.dll. Status=28;“Timeout was reached”
Call Stack (most recent call first):
3rdparty/ffmpeg/ffmpeg.cmake:10 (ocv_download)
cmake/OpenCVFindLibsVideo.cmake:219 (include)
CMakeLists.txt:557 (include)
Configuring incomplete, errors occurred!
See also “E:/Files/openCV/opencv/newbuild/CMakeFiles/CMakeOutput.log”.
See also “E:/Files/openCV/opencv/newbuild/CMakeFiles/CMakeError.log”.
这是由于ffmpeg没下载成功所致
打开路径E:\Files\openCV\opencv\sources\3rdparty\ffmpeg\ffmpeg.cmake
中有下载地址(opencv下载地址前半截保存位置可能会不一样)
这里值得注意的是,下载地址要经过转换(黄框部分用另一个黄框替换)最后绿色添加到末尾
为了方便看清楚,我的下载地址如下,稍微比对一下就能看明白了:
https://raw.githubusercontent.com/opencv/opencv_3rdparty/2a19d0006415955c79431116e4634f04d5eb5a74/ffmpeg/opencv_ffmpeg.dll
此外还需要知道所下载的三个文件的哈希值:查询工具https://download.csdn.net/download/xubuhui/12032166
工具使用方法:点击exe安装之后找到需要查询的文件右击——》属性即可看到对应的MD5
opencv_ffmpeg.dll的MD5:F081ABD9D6CA7E425D340CE586F9C090
opencv_ffmpeg_64.dll的MD5:A423363A6EB76D362CA6C406C96C8DB6
ffmpeg_version.cmake的MD5: 216942A44FEBE61BD47E404AACD746FF
将下载得文件对应放到相应的文件夹中
E:\Files\openCV\opencv\sources\3rdparty\ffmpeg\downloads\F081ABD9D6CA7E425D340CE586F9C090
E:\Files\openCV\opencv\sources\3rdparty\ffmpeg\downloads\A423363A6EB76D362CA6C406C96C8DB6