I'm having a problem with Boost libraries, particularly filesystem when used with OpenCV. Apparently the problem is similar to the one described in Conflict between Boost, OpenCV and Eigen libraries?. In that particular case the problem was solved by preceding the "using namespace" statement with all the "#include" statements. In my case, this was done in this way from the beginning.
I'm using OpenCV 2.4.3 and Boost 1.48 (already tried with 1.52 having the same exact problem). The programming is being done in Windows 7 (64 bit) using Eclipse CPP plugin and MinGW.
When trying to build my program I get the following errors:
C:\Boost\boost_1_48_0/boost/type_traits/decay.hpp:28:66: error: 'cvflann::<anonymous enum>' is/uses anonymous type
C:\Boost\boost_1_48_0/boost/type_traits/decay.hpp:28:66: error: trying to instantiate 'template<class T> struct boost::remove_reference'
C:\Boost\boost_1_48_0/boost/type_traits/decay.hpp:38:17: error: 'cvflann::<anonymous enum>' is/uses anonymous type
C:\Boost\boost_1_48_0/boost/type_traits/decay.hpp:38:17: error: trying to instantiate 'template<class T> struct boost::remove_reference'
In my case the using namespace statements are after the include statements:
#include <opencv2/opencv.hpp>
#include <iostream>
#include <fstream>
#include <stdio.h>
#include <vector>
#include <boost/filesystem.hpp>
#include <boost/multi_index_container.hpp>
using namespace std;
using namespace cv;
using namespace boost::filesystem;
Any idea in how to solve this problem will be greatly appreciated :D:D:D
Regards, Luis