熬夜掉毛怪 2022-11-03 20:32 采纳率: 100%
浏览 302
已结题

win10下通过cmake安装opencv及其扩展遇到文件无法编译的情况

问题遇到的现象和发生背景 :
    小白刚接触opencv,想通过cmake在win10系统下安装opencv4.5.5及其相应版本的扩展contrib,之后在vs2019上进行应用开发。但是在按照博客上的安装流程进行configure时,发生错误提示:

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:

'D:/OpenCV/opencvbuild/CMakeFiles/FindOpenMP/ompver_C.bin'

Recorded try_compile output location doesn't exist:

D:/OpenCV/opencvbuild/CMakeFiles/CMakeScratch/TryCompile-im56o0/Debug/cmTC_7b975.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)

我的解答思路和尝试过的方法
    光看字面意思,这个报错是提示无法将输出的可执行文件 “” 复制到copy_file指定的目标文件下,记录try_compile操作的输出位置不存在。但是萌新刚接触cmake了解不深,直接搜索英文或中文关键字,没有查到相关案例的解决方案。看大佬们通过cmake进行opencv安装时,都没类似的情况发生,所以想在这里询问各位大佬,有无相关解决方法。
  • 写回答

7条回答 默认 最新

  • 爱晚乏客游 2022-11-04 10:05
    关注

    先说你的需求,contrib包需要编译什么额外的第三方库吗?比如cuda之类的,还是使用一个none-free的模块就行?
    然后根据的需求勾选扩展模块,而不是所有扩展模块都选取,你这种就是勾选了类似OpenMP,blas,TBB之类的第三方模块,但是找不到这些模块的安装路径或者源码就或报错。
    另外就是configure的时候,红色报错除了waring之外其他的都要处理掉才行,你在opencv4.5.5这个包下面的.cache文件夹里面有无类似以下这些文件,每个文件夹里面的文件都不能是0kb,0kb说明没有下载完全。

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(6条)

报告相同问题?

问题事件

  • 系统已结题 11月18日
  • 已采纳回答 11月10日
  • 专家修改了标签 11月3日
  • 赞助了问题酬金15元 11月3日
  • 展开全部

悬赏问题

  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效