錯誤解決——Cmake編譯openCV出現“Error in configuration process,project files may be invalid”

在這裏插入圖片描述
在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://raw.githubusercontent.com/opencv/opencv_3rdparty/2a19d0006415955c79431116e4634f04d5eb5a74/ffmpeg/opencv_ffmpeg_64.dll

https://raw.githubusercontent.com/opencv/opencv_3rdparty/2a19d0006415955c79431116e4634f04d5eb5a74/ffmpeg/opencv_ffmpeg_64.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
E:\Files\openCV\opencv\sources\3rdparty\ffmpeg\downloads\216942A44FEBE61BD47E404AACD746FF

下載好之後再在cmake中進行configure
又出現錯誤如下:

Can't detect runtime and/or arch
FP16: Compiler support is available
Downloading ffmpeg_version.cmake...
Downloading ffmpeg_version.cmake... Done
ICV: Downloading ippicv_windows_20151201.zip...
CMake Error at 3rdparty/ippicv/downloader.cmake:73 (file):
file DOWNLOAD HASH mismatch

for file: [E:/Files/openCV/opencv/sources/3rdparty/ippicv/downloads/windows-04e81ce5d0e329c3fbc606ae32cad44d/ippicv_windows_20151201.zip]
expected hash: [04e81ce5d0e329c3fbc606ae32cad44d]
actual hash: [72e31e3fa2b51979a82c654e0b05c376]
status: [28;"Timeout was reached"]

Call Stack (most recent call first):
3rdparty/ippicv/downloader.cmake:110 (_icv_downloader)
cmake/OpenCVFindIPP.cmake:243 (include)
cmake/OpenCVFindLibsPerf.cmake:37 (include)
CMakeLists.txt:558 (include)
CMake Error at 3rdparty/ippicv/downloader.cmake:77 (message):
ICV: Failed to download ICV package: ippicv_windows_20151201.zip.
Status=28;"Timeout was reached"
Call Stack (most recent call first):
3rdparty/ippicv/downloader.cmake:110 (_icv_downloader)
cmake/OpenCVFindIPP.cmake:243 (include)
cmake/OpenCVFindLibsPerf.cmake:37 (include)
CMakeLists.txt:558 (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".

由於ippicv未下載成功所致

下載地址在E:\Files\openCV\opencv\sources\3rdparty\ippicv\downloader.cmake
在這裏插入圖片描述
同上操作這裏不再敘述
我的下載地址爲(對應自己得電腦下載即可)
https://raw.githubusercontent.com/opencv/opencv_3rdparty/81a676001ca8075ada498583e4166079e5744668/ippicv/ippicv_windows_20151201.zip

https://raw.githubusercontent.com/opencv/opencv_3rdparty/81a676001ca8075ada498583e4166079e5744668/ippicv/ippicv_macosx_20151201.tgz

https://raw.githubusercontent.com/opencv/opencv_3rdparty/81a676001ca8075ada498583e4166079e5744668/ippicv/ippicv_linux_20151201.tgz
此時用hash查詢工具查詢MD5
將文件保存我的電腦是windows其它得我就不展示了
放入路徑E:\Files\openCV\opencv\sources\3rdparty\ippicv\downloads\windows-04e81ce5d0e329c3fbc606ae32cad44d
將文件放到相應得目錄之後再次回到cmake

錯誤二

又出現錯誤

CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
CUDA_nppi_LIBRARY (ADVANCED)
linked by target "opencv_cudev" in directory E:/Files/openCV/opencv/sources/modules/cudev
linked by target "opencv_cudev" in directory E:/Files/openCV/opencv/sources/modules/cudev
linked by target "opencv_test_cudev" in directory E:/Files/openCV/opencv/sources/modules/cudev/test
linked by target "opencv_core" in directory E:/Files/openCV/opencv/sources/modules/core
linked by target "opencv_core" in directory E:/Files/openCV/opencv/sources/modules/core
linked by target "opencv_test_core" in directory E:/Files/openCV/opencv/sources/modules/core
linked by target "opencv_perf_core" in directory E:/Files/openCV/opencv/sources/modules/core
linked by target "opencv_test_cudaarithm" in directory E:/Files/openCV/opencv/sources/modules/cudaarithm
linked by target "opencv_cudaarithm" in directory E:/Files/openCV/opencv/sources/modules/cudaarithm
linked by target "opencv_cudaarithm" in directory E:/Files/openCV/opencv/sources/modules/cudaarithm
linked by target "opencv_perf_cudaarithm" in directory E:/Files/openCV/opencv/sources/modules/cudaarithm
linked by target "opencv_flann" in directory E:/Files/openCV/opencv/sources/modules/flann
linked by target "opencv_flann" in directory E:/Files/openCV/opencv/sources/modules/flann
linked by target "opencv_test_flann" in directory E:/Files/openCV/opencv/sources/modules/flann
linked by target "opencv_imgproc" in directory E:/Files/openCV/opencv/sources/modules/imgproc
linked by target "opencv_imgproc" in directory E:/Files/openCV/opencv/sources/modules/imgproc
linked by target "opencv_test_imgproc" in directory E:/Files/openCV/opencv/sources/modules/imgproc
linked by target "opencv_perf_imgproc" in directory E:/Files/openCV/opencv/sources/modules/imgproc
linked by target "opencv_test_ml" in directory E:/Files/openCV/opencv/sources/modules/ml
linked by target "opencv_ml" in directory E:/Files/openCV/opencv/sources/modules/ml
linked by target "opencv_ml" in directory E:/Files/openCV/opencv/sources/modules/ml
linked by target "opencv_test_video" in directory E:/Files/openCV/opencv/sources/modules/video
linked by target "opencv_video" in directory E:/Files/openCV/opencv/sources/modules/video
linked by target "opencv_video" in directory E:/Files/openCV/opencv/sources/modules/video
linked by target "opencv_perf_video" in directory E:/Files/openCV/opencv/sources/modules/video
linked by target "opencv_cudabgsegm" in directory E:/Files/openCV/opencv/sources/modules/cudabgsegm
linked by target "opencv_cudabgsegm" in directory E:/Files/openCV/opencv/sources/modules/cudabgsegm
linked by target "opencv_test_cudabgsegm" in directory E:/Files/openCV/opencv/sources/modules/cudabgsegm
linked by target "opencv_perf_cudabgsegm" in directory E:/Files/openCV/opencv/sources/modules/cudabgsegm
linked by target "opencv_cudafilters" in directory E:/Files/openCV/opencv/sources/modules/cudafilters
linked by target "opencv_cudafilters" in directory E:/Files/openCV/opencv/sources/modules/cudafilters
linked by target "opencv_test_cudafilters" in directory E:/Files/openCV/opencv/sources/modules/cudafilters
linked by target "opencv_perf_cudafilters" in directory E:/Files/openCV/opencv/sources/modules/cudafilters
linked by target "opencv_cudaimgproc" in directory E:/Files/openCV/opencv/sources/modules/cudaimgproc
linked by target "opencv_cudaimgproc" in directory E:/Files/openCV/opencv/sources/modules/cudaimgproc
linked by target "opencv_test_cudaimgproc" in directory E:/Files/openCV/opencv/sources/modules/cudaimgproc
linked by target "opencv_perf_cudaimgproc" in directory E:/Files/openCV/opencv/sources/modules/cudaimgproc
linked by target "opencv_perf_cudawarping" in directory E:/Files/openCV/opencv/sources/modules/cudawarping
linked by target "opencv_cudawarping" in directory E:/Files/openCV/opencv/sources/modules/cudawarping
linked by target "opencv_cudawarping" in directory E:/Files/openCV/opencv/sources/modules/cudawarping
linked by target "opencv_test_cudawarping" in directory E:/Files/openCV/opencv/sources/modules/cudawarping
linked by target "opencv_imgcodecs" in directory E:/Files/openCV/opencv/sources/modules/imgcodecs
linked by target "opencv_imgcodecs" in directory E:/Files/openCV/opencv/sources/modules/imgcodecs
linked by target "opencv_test_imgcodecs" in directory E:/Files/openCV/opencv/sources/modules/imgcodecs
linked by target "opencv_perf_imgcodecs" in directory E:/Files/openCV/opencv/sources/modules/imgcodecs
linked by target "opencv_perf_photo" in directory E:/Files/openCV/opencv/sources/modules/photo
linked by target "opencv_photo" in directory E:/Files/openCV/opencv/sources/modules/photo
linked by target "opencv_photo" in directory E:/Files/openCV/opencv/sources/modules/photo
linked by target "opencv_test_photo" in directory E:/Files/openCV/opencv/sources/modules/photo
linked by target "opencv_test_shape" in directory E:/Files/openCV/opencv/sources/modules/shape
linked by target "opencv_shape" in directory E:/Files/openCV/opencv/sources/modules/shape
linked by target "opencv_shape" in directory E:/Files/openCV/opencv/sources/modules/shape
linked by target "opencv_test_videoio" in directory E:/Files/openCV/opencv/sources/modules/videoio
linked by target "opencv_videoio" in directory E:/Files/openCV/opencv/sources/modules/videoio
linked by target "opencv_videoio" in directory E:/Files/openCV/opencv/sources/modules/videoio
linked by target "opencv_perf_videoio" in directory E:/Files/openCV/opencv/sources/modules/videoio
linked by target "opencv_cudacodec" in directory E:/Files/openCV/opencv/sources/modules/cudacodec
linked by target "opencv_cudacodec" in directory E:/Files/openCV/opencv/sources/modules/cudacodec
linked by target "opencv_perf_cudacodec" in directory E:/Files/openCV/opencv/sources/modules/cudacodec
linked by target "opencv_test_cudacodec" in directory E:/Files/openCV/opencv/sources/modules/cudacodec
linked by target "opencv_highgui" in directory E:/Files/openCV/opencv/sources/modules/highgui
linked by target "opencv_highgui" in directory E:/Files/openCV/opencv/sources/modules/highgui
linked by target "opencv_test_highgui" in directory E:/Files/openCV/opencv/sources/modules/highgui
linked by target "opencv_perf_objdetect" in directory E:/Files/openCV/opencv/sources/modules/objdetect
linked by target "opencv_objdetect" in directory E:/Files/openCV/opencv/sources/modules/objdetect
linked by target "opencv_objdetect" in directory E:/Files/openCV/opencv/sources/modules/objdetect
linked by target "opencv_test_objdetect" in directory E:/Files/openCV/opencv/sources/modules/objdetect
linked by target "opencv_ts" in directory E:/Files/openCV/opencv/sources/modules/ts
linked by target "opencv_ts" in directory E:/Files/openCV/opencv/sources/modules/ts
linked by target "opencv_test_features2d" in directory E:/Files/openCV/opencv/sources/modules/features2d
linked by target "opencv_features2d" in directory E:/Files/openCV/opencv/sources/modules/features2d
linked by target "opencv_features2d" in directory E:/Files/openCV/opencv/sources/modules/features2d
linked by target "opencv_perf_features2d" in directory E:/Files/openCV/opencv/sources/modules/features2d
linked by target "opencv_calib3d" in directory E:/Files/openCV/opencv/sources/modules/calib3d
linked by target "opencv_calib3d" in directory E:/Files/openCV/opencv/sources/modules/calib3d
linked by target "opencv_test_calib3d" in directory E:/Files/openCV/opencv/sources/modules/calib3d
linked by target "opencv_perf_calib3d" in directory E:/Files/openCV/opencv/sources/modules/calib3d
linked by target "opencv_cudafeatures2d" in directory E:/Files/openCV/opencv/sources/modules/cudafeatures2d
linked by target "opencv_cudafeatures2d" in directory E:/Files/openCV/opencv/sources/modules/cudafeatures2d
linked by target "opencv_test_cudafeatures2d" in directory E:/Files/openCV/opencv/sources/modules/cudafeatures2d
linked by target "opencv_perf_cudafeatures2d" in directory E:/Files/openCV/opencv/sources/modules/cudafeatures2d
linked by target "opencv_cudalegacy" in directory E:/Files/openCV/opencv/sources/modules/cudalegacy
linked by target "opencv_cudalegacy" in directory E:/Files/openCV/opencv/sources/modules/cudalegacy
linked by target "opencv_test_cudalegacy" in directory E:/Files/openCV/opencv/sources/modules/cudalegacy
linked by target "opencv_perf_cudalegacy" in directory E:/Files/openCV/opencv/sources/modules/cudalegacy
linked by target "opencv_cudaobjdetect" in directory E:/Files/openCV/opencv/sources/modules/cudaobjdetect
linked by target "opencv_cudaobjdetect" in directory E:/Files/openCV/opencv/sources/modules/cudaobjdetect
linked by target "opencv_perf_cudaobjdetect" in directory E:/Files/openCV/opencv/sources/modules/cudaobjdetect
linked by target "opencv_test_cudaobjdetect" in directory E:/Files/openCV/opencv/sources/modules/cudaobjdetect
linked by target "opencv_cudaoptflow" in directory E:/Files/openCV/opencv/sources/modules/cudaoptflow
linked by target "opencv_cudaoptflow" in directory E:/Files/openCV/opencv/sources/modules/cudaoptflow
linked by target "opencv_test_cudaoptflow" in directory E:/Files/openCV/opencv/sources/modules/cudaoptflow
linked by target "opencv_perf_cudaoptflow" in directory E:/Files/openCV/opencv/sources/modules/cudaoptflow
linked by target "opencv_perf_cudastereo" in directory E:/Files/openCV/opencv/sources/modules/cudastereo
linked by target "opencv_cudastereo" in directory E:/Files/openCV/opencv/sources/modules/cudastereo
linked by target "opencv_cudastereo" in directory E:/Files/openCV/opencv/sources/modules/cudastereo
linked by target "opencv_test_cudastereo" in directory E:/Files/openCV/opencv/sources/modules/cudastereo
linked by target "opencv_test_stitching" in directory E:/Files/openCV/opencv/sources/modules/stitching
linked by target "opencv_stitching" in directory E:/Files/openCV/opencv/sources/modules/stitching
linked by target "opencv_stitching" in directory E:/Files/openCV/opencv/sources/modules/stitching
linked by target "opencv_perf_stitching" in directory E:/Files/openCV/opencv/sources/modules/stitching
linked by target "opencv_superres" in directory E:/Files/openCV/opencv/sources/modules/superres
linked by target "opencv_superres" in directory E:/Files/openCV/opencv/sources/modules/superres
linked by target "opencv_test_superres" in directory E:/Files/openCV/opencv/sources/modules/superres
linked by target "opencv_perf_superres" in directory E:/Files/openCV/opencv/sources/modules/superres
linked by target "opencv_videostab" in directory E:/Files/openCV/opencv/sources/modules/videostab
linked by target "opencv_videostab" in directory E:/Files/openCV/opencv/sources/modules/videostab
linked by target "opencv_traincascade" in directory E:/Files/openCV/opencv/sources/apps/traincascade
linked by target "opencv_createsamples" in directory E:/Files/openCV/opencv/sources/apps/createsamples
linked by target "opencv_annotation" in directory E:/Files/openCV/opencv/sources/apps/annotation
linked by target "opencv_visualisation" in directory E:/Files/openCV/opencv/sources/apps/visualisation
linked by target "opencv_version" in directory E:/Files/openCV/opencv/sources/apps/version
Configuring incomplete, errors occurred!
See also "E:/Files/openCV/opencv/newbuild/CMakeFiles/CMakeOutput.log".
See also "E:/Files/openCV/opencv/newbuild/CMakeFiles/CMakeError.log".

參照這篇文章,這裏面講的很好,照做就可以了。
https://stackoverflow.com/questions/46584000/cmake-error-variables-are-set-to-notfound

如何下載protobuf-cpp文件?

錯誤三

在這裏插入圖片描述

CMake Error at CMakeLists.txt:98 (project):
  No CMAKE_CXX_COMPILER could be found.



CMake Error at CMakeLists.txt:98 (project):
  No CMAKE_C_COMPILER could be found.
  • 問題原因
    出現問題之後我重新安裝了vs2015版後再次編譯的時候出現該問題
    原因在於安裝新VS時未安裝Windows SDK
  • 爲visual Studio 安裝組件的方式:打開控制面板找到程序與功能
  • 找到自己安裝的VS
  • 右擊更改——》修改——》安裝即可
    在這裏插入圖片描述
發佈了88 篇原創文章 · 獲贊 36 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章