安装caffe框架时报错——对‘cv::_InputArray::_InputArray(cv::Mat const&)’未定义的引用

关于在ubuntu上安装caffe框架的教程,网上已有很多,因此本文旨在:(1)整理现有资料;(2)分享若干自己遇到的特殊问题和解决方案。

1. 现有资料:

(1)安装opencv

(2)安装caffe框架

2. 自己遇到的特殊问题及解决方案:

问题描述:

我按照上述教程安装caffe时,遇到一个问题:在caffe目录下执行make all时,链接过程报错——对‘cv::_InputArray::_InputArray(cv::Mat const&)’未定义的引用。

关于上述问题,网上也有很多解决方案,但我直接套用别人的解决方案后,并未解决上述问题。

解决思路:

出现"对xxx’未定义的引用"时,通常是由于“编译/链接路径配置”出了问题,网上已有不少解决方案。但是,由于每台电脑的路径配置千差万别,运气差的话,把全网的解决方案都试一遍也不能解决(笔者就属于这类运气差的人)。此时,我们需要亲自阅读一遍Makefile文件,找找是哪个路径配置错了,然后改正过来。在不了解Makefile文件的人看来,Makefile似乎是本晦涩的天书。其实,要读懂Makefile文件并不难,我们只需了解一些关于Makefile的基础知识即可。

我遇到的“对‘cv::_InputArray::_InputArray(cv::Mat const&)’未定义的引用”,是由于系统中安装了多个opencv版本导致的。具体地讲,我的编译器的包含路径指向了opencv2.x的include文件夹,但是链接器的库路径指向了opencv3.x的lib文件夹。于是,我将编译器的包含路径指向opencv3.x的include文件夹后,问题便解决了。下面给出我在修改编译器包含路径的所查阅的资料:

修改编译器的包含路径和链接器的库路径

opencv版本切换

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值