PCL库的各种依赖和冲突让人头大,这里记录了一些PCL使用过程中的问题,长期更新(本次更新时间,2016年12月)。

1. max的宏名冲突

    解决方法:

        使用NOMINMAX宏可以防止stl库定义min和max

        或者在max出现处使用括弧标识 (std::max)(a,b),这样可以避免编译器将max解释为宏

2. C++11标准问题

    解决方法:

        boost库中vector的this报错时,建议开启C++11的支持

3. flann库与opencv中的flann冲突

    解决方法:

        在flann前面加上全局命名空间 ::flann

        在要使用opencv中flann的地方,使用cv::flann这样可以避免冲突

4. boost库的编译错误

    解决方法:

        .\boost/type_traits/detail/mp_defer.hpp(50) : fatal error C1001: An internal error has occurred in the compiler

        使用VS2012或者VS2015,或者VS2013update5,VS2013早期都有这个bug

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注