error C2872: “flann”: 不明确的符号 — PCL 与OpenCV2命名空间冲突问题的解决方法
error C2872: “flann”
如果你在编译你的程序的时候,出现了这样的错误:
error C2872: “flann”: 不明确的符号
1> 可能是“flann”
1> 或 “cv::flann”
说明你在你的程序中,你同时使用了:PCL库和OpenCV库。这两个库都有包含flann库。
解决办法
去掉程序中所有的:
using namespace cv;
将使用OpenCV库里的函数和变量都写全称。(就是前面包含环境变量)
总结:你一定是为了方便,在程序的最前面定义了
using namespace cv;
。你在程序中同时使用了PCL 和 OpenCV这两个库,你这样声明空间命名,编译器在编译程序的时候,不知道PCLl库里面的flann
是要编译成flann
还是cv::flann
,所以就出现了上面这样的错误。
误人子弟
我在网上看到了一个误人子弟的解决方法:
http://ask.csdn.net/questions/213168
这个解决方法还大言不惭的说测试通过,过你个头啊!
参考网站:
http://www.pcl-users.org/Flann-vs-OpenCV-vs-PCL-conflict-td3722814.html
http://stackoverflow.com/questions/12481208/opencv-and-pcl-conflict
所有评论(0)