OpenCV3.0 或OpenCV3.1 与cuda编译出现LINK: warning LNK4044: 无法识别的选项/LC:/Program Files/XXXXXXXX/lib/x64

OpenCV3.0 或OpenCV3.1 与cuda编译出现LINK: warning LNK4044: 无法识别的选项“/LC:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v7.5/lib/x64”;已忽略的问题。好吧,为了显示更好一点,还是截个图吧。
这里写图片描述
为了防止语句有歧义,就简单说一些重点要注意的东西吧。
OpenCV的主模块的源码的文件夹名字叫做opencv-master。为啥叫做opencv-master呢,那是因为从Github下载下来然后解压的名字就是这个。
OpenCV的Contrib模块的源码的文件夹名字叫做opencv_contrib-master,取这个名字的原因也是和上面一样。如果大家的Visual Studio是中文的,那么会显示LINK: warning LNK4044: 无法识别的选项“/LC:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v7.5/lib/x64”;已忽略,如果是英文的,则显示LINK : warning LNK4044: unrecognized option '/LC:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v7.5/lib/x64'; ignored。当然,如果CUDA的安装路径与版本和我的不一样,那么出现的错误提示也会稍微的不一致。
首先,在源代码下面搜索CMakeLists.txt文件,当然,最好用Everything这个小软件搜索,搜索完了之后,用文本编辑器软件打开,比如Notepad++,搜索的结果图和用文本编辑器打开的界面如下所示:
这里写图片描述
这里写图片描述
弄完之后,用Notepad++在所有已打开的文本中搜索foreach(p ${CUDA_LIBS_PATH}),至于为啥搜索这个东西呢,是因为已经有大神定位到了这一区域,为了省事儿,所以搜索这个了。这里写图片描述,具体问题主要出现在第638行代码中,这里写图片描述,将其改成下面的形式:
这里写图片描述。为了给大家方便,我还是弄个可以复制粘贴的吧。

  foreach(p ${CUDA_LIBS_PATH})
    set(OPENCV_LINKER_LIBS ${OPENCV_LINKER_LIBS} ${CMAKE_LIBRARY_PATH_FLAG}${p})
  endforeach()

最后,重新Cmake。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值