VS2015 + CUDA10 编译 OpenCV2.4.13 之 OpenCV编译文件修改

因为CUDA10貌似不支持OpenCV2,所以需要对OpenCV2的文件进行修改

主要参考https://blog.csdn.net/u014613745/article/details/78310916

请注意
本篇博客需要结合上面的链接中的博客进行食用,因为该博客发的较早,所以某几步还需要在它基础上进行更改,主体步骤按照该博客来就行,这里只给出需要调整的地方:

【第四步】
在第四步修改架构的时候,需要根据自己的显卡架构以及算力修改
例如 RTX2060s是基于Turing架构的,算力为7.5
所以应该修改下面两处(前面的那个Kepler不用管,也可以自己添加其他架构和算力):

  • 第一处
set(_generations "Fermi" "Kepler") 

改为:

  set(_generations "Fermi" "Kepler" "Maxwell" "Pascal" "Volta" "Turing")
  • 第二处
  set(__cuda_arch_ptx "")
  if(CUDA_GENERATION STREQUAL "Fermi")
    set(__cuda_arch_bin "2.0 2.1(2.0)")
  elseif(CUDA_GENERATION STREQUAL "Kepler")

改为

  set(__cuda_arch_ptx "")
  if(CUDA_GENERATION STREQUAL "Fermi")
    set(__cuda_arch_bin "2.0")
  elseif(CUDA_GENERATION STREQUAL "Kepler")
    set(__cuda_arch_bin "3.0 3.5 3.7")
  elseif(CUDA_GENERATION STREQUAL "Maxwell")
    set(__cuda_arch_bin "5.0 5.2")
  elseif(CUDA_GENERATION STREQUAL "Pascal")
    set(__cuda_arch_bin "6.0 6.1")
  elseif(CUDA_GENERATION STREQUAL "Volta")
    set(__cuda_arch_bin "7.0")
  elseif(CUDA_GENERATION STREQUAL "Turing")
    set(__cuda_arch_bin "7.5")

【第五步】
在第5步中,OpenCV2.4.13的common.hpp文件在路径opencv/build/include/opencv2/gpu/device中

【随后】
打开Cmake准备编译,选好文件路径以及系统后,

点击configure,然后检查with_CUDA是否勾上,没有勾上的话需要勾上;

然后根据自己的显卡修改下图两个位置(与之前在第四步中要对应),比如说我安装的显卡为RTX2060s,算力为7.5,所以都修改为7.5
在这里插入图片描述
再点击Configure,如果出现上图中红字的warning:

CMake Warning at cmake/OpenCVPackaging.cmake:23 (message):
CPACK_PACKAGE_VERSION does not match version provided by version.hpp
header! Call Stack (most recent call first): CMakeLists.txt:1105
(include)

那就还需要修改一个地方:在OpenCVPackaging.cmake文件中的set(CPACK_PACKAGE_VERSION "${OPENCV_VCSVERSION}")上面添加

set(OPENCV_VCSVERSION "2.4.13.6")

根据自己的版本进行修改
(这里参考了https://blog.csdn.net/qq_41598072/article/details/100665769

再点击Configure, 如果还有Warning针对具体Warning解决。

然后点击Generate 生成,成功生成后Open Project,会自动打开VS,右键ALL_BUILD进行生成,(注意会不会报错,有报错的话要及时停下来)等待两个小时后。。再右键INSTALL生成,这就编译好了,之后就剩配置环境了。

配置可以参考其他博客或者这个:https://blog.csdn.net/qq_38574198/article/details/109549322

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值