2014-09-30 143 views
3

我正在运行安装了CUDA 6.5的ubuntu 14.04系统。我正在尝试使用OpenCV库的功能匹配的gpu实现,我的openCV库版本是2.4.9。 cmake的..是好的,但是当我想要做的项目它给了我这样的错误:openCV 2.4.9与CUDA 6.5编译错误

> /usr/local/include/opencv2/gpu/gpu.hpp:432:29: error: ‘vector’ does 
> not name a type CV_EXPORTS void merge(const vector<GpuMat>& src, 
> GpuMat& dst, Stream& stream = Stream::Null()); 
>       ^/usr/local/include/opencv2/gpu/gpu.hpp:432:35: error: expected ‘,’ or 
> ‘...’ before ‘<’ token CV_EXPORTS void merge(const vector<GpuMat>& 
> src, GpuMat& dst, Stream& stream = Stream::Null()); 

能否请你帮我这个?谢谢...

+1

你有没有'#包括'和'使用std ::向量;'? – herohuyongtao 2014-09-30 13:43:13

+0

谢谢。你的意思是在我自己的代码中?导致错误出现在gpu.hpp中。 – 2014-09-30 13:45:06

+1

尝试使用CUDA进行编译,看看问题是否仍然存在。我知道这不是你的事,但它有助于缩小问题的范围。 – csnate 2014-09-30 14:30:49

回答

5

把 using namespace std;之前包括gpu.hpp

例如

using namespace std; 
#include <opencv2/gpu/gpu.hpp> 

这对我的作品

+0

谢谢,也为我工作 – 2016-08-05 13:30:29