该问题原因是下载的CMake版本低于使用的Visual Studio版本,所以在Cmake的编译Lists内没有包含该Visual Studio版本信息,比如我使用的是VS2022,Cmake版本是3.24.2,编译时就报了该错误。
解决方法:
找到D:\opencv\sources\cmake文件夹下OpenCVDetectCXXCompiler.cmake文件,打开之后如图添加语句
elseif(MSVC_VERSION EQUAL 1910)
set(OpenCV_RUNTIME vc15)
elseif(MSVC_VERSION EQUAL 1922)
set(OpenCV_RUNTIME vc16)
elseif(MSVC_VERSION EQUAL 1933)
set(OpenCV_RUNTIME vc17)
添加完成后保存Cmake再重新Config就不会报错了