使用MVSC2019编译64位版本的OpenCV源代码出现了问题。

3

我正在使用MSVC编译64位版本的openCV以及Qt的Windows应用。

在首次配置时,我遇到了一系列错误,类似于:

Check size of size_t
CMake Error at C:/Program Files/CMake/share/cmake-3.25/Modules/CheckTypeSize.cmake:147 (try_compile):
  Cannot copy output executable

    ''

  to destination specified by COPY_FILE:

    'C:/Users/alejandro/Downloads/opencv/build/CMakeFiles/CheckTypeSize/SIZEOF_SIZE_T.bin'

  Recorded try_compile output location doesn't exist:

    C:/Users/alejandro/Downloads/opencv/build/CMakeFiles/CMakeScratch/TryCompile-jglvcw/Debug/cmTC_e9d0b.exe

Call Stack (most recent call first):
  C:/Program Files/CMake/share/cmake-3.25/Modules/CheckTypeSize.cmake:277 (__check_type_size_impl)
  3rdparty/libjpeg-turbo/CMakeLists.txt:25 (check_type_size)

有人知道我如何解决这个问题吗?

编辑1

我发现另一个与OpenMP相关的重要错误是这样的:

CMake Error at C:/Program Files/CMake/share/cmake-3.25/Modules/FindOpenMP.cmake:420 (try_compile):
  Cannot copy output executable

    ''

  to destination specified by COPY_FILE:

    'C:/Users/alejandro/Downloads/opencv/build/CMakeFiles/FindOpenMP/ompver_C.bin'

  Recorded try_compile output location doesn't exist:

    C:/Users/alejandro/Downloads/opencv/build/CMakeFiles/CMakeScratch/TryCompile-q8quzk/Debug/cmTC_e2ecd.exe

Call Stack (most recent call first):
  C:/Program Files/CMake/share/cmake-3.25/Modules/FindOpenMP.cmake:560 (_OPENMP_GET_SPEC_DATE)
  C:/Program Files/CMake/share/cmake-3.25/Modules/FindBLAS.cmake:768 (find_package)
  C:/Program Files/CMake/share/cmake-3.25/Modules/FindLAPACK.cmake:247 (find_package)
  C:/Program Files/CMake/share/cmake-3.25/Modules/FindLAPACK.cmake:283 (_lapack_find_dependency)
  cmake/OpenCVFindLAPACK.cmake:176 (find_package)
  CMakeLists.txt:733 (include)
1个回答

6

我也遇到了同样的问题,这是因为CMake-3.25.0-rc2的原因,将其更改为3.24.2即可解决问题。


有人对此了解更多吗?我在使用VS2017和cmake 3.25.0构建OpenCV 4.5.0时遇到了非常类似的问题。问题似乎是由于cmake的新版本引起的。 - johnfo
好的,看起来这是一个问题 https://github.com/opencv/opencv/issues/22784 ,解决方案是等待 cmake 3.25.1。 - johnfo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接