Boost conflict with OpenCV, Eigen?
Hi there, I have a program that uses Filesystem, which compiles and runs without problem, but only if used by itself. If I use Filesystem within a program that also needs OpenCV and Eigen libraries, there seems to be a conflict: ... In file included from C:\boost_1_45_0/boost/filesystem/v3/path_traits.hpp:22:0, from C:\boost_1_45_0/boost/filesystem/v3/path.hpp:25, from C:\boost_1_45_0/boost/filesystem.hpp:32, from ..\src\ComputeNatScaleFunction.cpp:18: C:\boost_1_45_0/boost/type_traits/decay.hpp: In instantiation of 'boost::decay<cv::<anonymous enum> >': C:\cmake_binaries\include/opencv2/core/operations.hpp:766:23: instantiated from here C:\boost_1_45_0/boost/type_traits/decay.hpp:28:66: error: 'cv::' is/uses anonymous type C:\boost_1_45_0/boost/type_traits/decay.hpp:28:66: error: trying to instantiate 'template struct boost::remove_reference' C:\boost_1_45_0/boost/type_traits/decay.hpp:38:17: error: 'cv::' is/uses anonymous type C:\boost_1_45_0/boost/type_traits/decay.hpp:38:17: error: trying to instantiate 'template struct boost::remove_reference' C:\boost_1_45_0/boost/type_traits/decay.hpp: In instantiation of 'boost::decay<cv::<anonymous enum> >': C:\cmake_binaries\include/opencv2/core/operations.hpp:917:21: instantiated from here C:\boost_1_45_0/boost/type_traits/decay.hpp:28:66: error: 'cv::' is/uses anonymous type C:\boost_1_45_0/boost/type_traits/decay.hpp:28:66: error: trying to instantiate 'template struct boost::remove_reference' C:\boost_1_45_0/boost/type_traits/decay.hpp:38:17: error: 'cv::' is/uses anonymous type C:\boost_1_45_0/boost/type_traits/decay.hpp:38:17: error: trying to instantiate 'template struct boost::remove_reference' C:\boost_1_45_0/boost/type_traits/decay.hpp: In instantiation of 'boost::decay<Eigen::<anonymous enum> >': C:\Eigen2/Eigen/src/Core/GenericPacketMath.h:116:18: instantiated from here C:\boost_1_45_0/boost/type_traits/decay.hpp:28:66: error: 'Eigen::' is/uses anonymous type C:\boost_1_45_0/boost/type_traits/decay.hpp:28:66: error: trying to instantiate 'template struct boost::remove_reference' C:\boost_1_45_0/boost/type_traits/decay.hpp:38:17: error: 'Eigen::' is/uses anonymous type C:\boost_1_45_0/boost/type_traits/decay.hpp:38:17: error: trying to instantiate 'template struct boost::remove_reference' etc. Are there known conflicts between Boost (1.45) and OpenCV 2.2/Eigen2/other libraries? I am using Eclipse CDT and MinGW toolchain. After going through problems described in http://boost.2283326.n4.nabble.com/How-to-built-boost-td3053130.html, my Filesystem library is of version 3, whereas other ones are of version 2. Cheers, PP
participants (1)
-
Prva Ponta